目录
目录
字符串最后一个单词的长度
import java.util.Scanner;
public class Main{
public static void main(String[] args){
Scanner sc=new Scanner(System.in);
String str=sc.nextLine();
int len=str.length()-1;
int count=0;
while(len>=0 && str.charAt(len)!=' ' ){
count++;
len--;
}
System.out.println(count);
}
}
计算某字符出现次数
利用Scanner输入 字符
sc.nextLine().CharAt(0);
由于Scanner没有直接输入字符的方法,所以先输入字符串 ,后取第一个字符
字符串统一转换为大/小写
str.toUpperCase()
str.toLowerCase()
明明的随机数
集合排序知识点、集合知识点、Collections需要复习
ArrayList、Set、Map都有contains功能
Collections.sort(List);——排序功能
测试数据有多组 一定要用Scanner的while功能
import java.util.*;
public class Main{
public static void main(String[] args){
Random rn=new Random();
Scanner sc=new Scanner(System.in);
while(sc.hasNext()){
int N=sc.nextInt();
//HashSet<Integer> hash=new HashSet<>();
ArrayList<Integer> list=new ArrayList<>();
for(int i=0 ; i<N ; i++){
int ranNum=sc.nextInt();
if(!list.contains(ranNum)){
list.add(ranNum);
}
}
Collections.sort(list);
for(int num : list){
System.out.println(num);
}
}
}
}
HJ4 字符串分隔
//空字符串不处理
//进一步改进 就是只用一个StringBuffer
import java.util.Scanner;
public class Main{
public static void main(String[] args){
Scanner sc=new Scanner(System.in);
String str=sc.nextLine();
StringBuffer sb=new StringBuffer(str);
int len=sb.length();
int count=0;
int start=0;
StringBuffer s1=new StringBuffer();
for(int i=0 ; i<len ; i++){
char ch=str.charAt(i);
if(ch!=' ' && count<8 ){
s1.append(ch);
count++;
}
if(count==8){
//输出
//System.out.println(s1.toString());
count=0;
//s1=new StringBuffer();
}
}
while(count<8 && count!=0){
count++;
s1.append("0");
}
for(int i=0;i<s1.length()/8;i++){
System.out.println(s1.substring(8*i,(i+1)*8));
}
}
}
HJ5 进制转换
import java.util.Scanner;
import java.util.HashMap;
import java.lang.Math;
public class Main{
public static void main(String[] args){
Scanner sc=new Scanner(System.in);
String str=sc.nextLine();
//要不要转化大写
int len=str.length();
HashMap<Character,Integer> hash=new HashMap<>();
hash.put('A',10);
hash.put('B',11);
hash.put('C',12);
hash.put('D',13);
hash.put('E',14);
hash.put('F',15);
int res=0;
int index=0;
int n=0;
for(int i=len-1 ; i>1 ;i--){
if(48<=str.charAt(i) && str.charAt(i)<=57){
n=str.charAt(i)-48;
}else{
n=hash.get(str.charAt(i));//10;
}
int pw=(int) Math.pow(16,index);//16的次方
index++;
res+=n*pw;
}
System.out.println(res);
}
}