当前位置: 首页 > news >正文

【Java-简单练习题】

1.”AABBBCCC“>>"A2B3C3"

public class Test6 {public static void main(String[] args) {String ns = "AABBBCCCC";String ret=compress(ns);System.out.println(ret);}public static String compress(String str) {StringBuilder ret = new StringBuilder();int count = 1;// 遍历至倒数第二个for (int i = 0; i < str.length()-1; i++) {if (str.charAt(i) == str.charAt(i + 1)) {count++;} else {ret.append(str.charAt(i)+""+count);count=1;}}//处理最后一个字符ret.append(str.charAt(str.length()-1)+""+count);return ret.toString();
}
}

2. 图书ISBN验证码

package ti;
import java.util.Scanner;
public class Test02 {public static void main(String[] args) {Scanner scan = new Scanner(System.in);//在此输入您的代码...//输入ISBNString isbn=scan.next();//去除分隔符String isbn1=isbn.replace("-","");//累加int sum=0;for(int i=0,k=1;i<isbn1.length()-1;i++,k++){int na=Integer.parseInt(String.valueOf(isbn1.charAt(i)));sum=sum+na*k;}//计算校验码String code=String.valueOf(sum%11==10?"X":sum%11);//判断String isbncode=String.valueOf(isbn.charAt(isbn.length()-1));if(code.equals(isbncode)){System.out.println("Right");}else{System.out.println(isbn.substring(0,isbn.length()-1)+code);}scan.close();}}

3. 统计字母数字中文符号的个数

public static void main(String[] args) {String str = "OMG,你们的中英混搭真是各有千秋,666但Someone丝毫掩盖不了你们那硬朗的英语底子!For eg.papi酱真的very有才华啊";HashMap<String, Integer> map = new HashMap<String, Integer>();map.put("letters", 0);//map.put("numbers", 0);map.put("chinese", 0);map.put("flags", 0);// 遍历字符串for (int i = 0; i < str.length(); i++) {char c = str.charAt(i);if (c >= 'A' && c <= 'Z' || c >= 'a' && c <= 'z') {int oldValue = map.get("letters");int newValue = oldValue + 1;map.put("letters", newValue);}if(c >= '0' && c <= '9') {map.put("numbers", map.getOrDefault("numbers",0)+1);}if(c >= 0x4e00 && c <= 0x29fa5) {map.put("chinese", map.get("chinese")+1);}else {map.put("flags", map.get("flags")+1);}}System.out.println(map);}

4. 幸运数字

package learn01;import java.math.BigInteger;public class Test02 {public static void main(String[] args) {int i = 1, counter = 0;while (true) {String bin = Integer.toBinaryString(i);String oct = Integer.toOctalString(i);String dec = String.valueOf(i);String hex = Integer.toHexString(i);int binsum = sum(bin, 2);int octsum = sum(oct, 8);int decsum = sum(dec, 10);int hexsum = sum(hex, 16);if (i % binsum == 0 && i % octsum == 0 && i % decsum == 0 && i % hexsum == 0) {System.out.println(i);counter++;}if(counter>=2023) {break;}i++;}}private static int sum(String number,int radix) {BigInteger ret=new BigInteger("0",radix);for(int i=0;i<number.length();i++) {BigInteger bn=new BigInteger(number.substring(i,i+1),radix);ret=ret.add(bn);}return ret.intValue();}
}


http://www.mrgr.cn/news/25604.html

相关文章:

  • C++入门基础
  • HarmonyOS开发实战( Beta5.0)日历切换案例实践详解
  • AI性能评估工具 | 安兔兔AI大模型评测 v1.0.0.1095
  • qml CheckBox 复选框
  • 智能会计定义
  • TCP/IP - Transport Layer
  • Python青少年简明教程:类和对象入门
  • python的特性,以及和Java的区别
  • 如何将任何文本语料转换为知识图谱?
  • 动物目标检测——基于YOLOv5和树莓派4B平台
  • go的学习笔记
  • C语言知识体系思维导图
  • VideoPlayer插件的用法
  • Linux线程同步:深度解析条件变量接口
  • 购物车装载状态检测系统源码分享
  • eureka服务开启之后的默认登录账号密码是什么?
  • Shadertoy和desmos用来快速图像化辅助计算的好工具
  • RX8025T驱动的C语言实现
  • Keil MDK报错:Browse information of one or more files is not available----解决方法:
  • xxl-job