2024-07-28 19:49:43
import java.util.Scanner;
public class test3 {
public static void main(String [] args){
System.out.print("inuput : ");
Scanner input=new Scanner(System.in);
int [] digit =new int[256];
String inputString = input.next();
//为了避免在输入的时候错误的键入了空格和table,进行一下处理
//以空格为分隔符分割字符串
String [] strings=inputString.split(" ");
String inputString1="";
//将分割后的字符串重新连接起来
for(String str : strings){
inputString1+=str;
}
//以table为分隔符分割字符串
strings=inputString.split(" ");
//将分割后的字符串重新连接起来
String inputString2="";
for(String str : strings){
inputString2+=str;
}
String returnString="";
for (int i = 0; i < inputString2.length(); i++) {
digit[inputString.charAt(i)-'!']++;
//将重复的字符输出,这里为什么是2呢有人会问重复次数也可以大于2啊?
//是因为大于2的在2的时候已经被输出,为了避免重复次数大于2的字符被重复输出,所以这里只能是2
if(digit[inputString.charAt(i)-'!']==2){
returnString+=inputString.charAt(i);
}
}
System.out.print(returnString);
}
}
楼主算是问对人了
马上给答案
楼主虽然我这个最终目的不是统计每个字符的个数,但是代码里面已经实现了这个功能,只要稍作修改就可以,我的主要功能是输出重复的字符!
希望我给的代码楼主还满意
谢谢
还有比如xixixixi
查找有多少个x应该怎么编代码呢
有个很简单方法
int count=0;
int i=string.fisrtIndexOf("x");
if(i!=0) count=1;
for(int j=0; j<string.length;j++){
if(string.IndexOf("x",i+1) )
count++;
}
大概思想是这样,我先上课去了!!!
2024-07-28 07:45:26
java String中可以使用如下方法获得字符个数:
public static void test(String str){
Map map = new HashMap();
for(int i = 0; i < str.length(); i++){
String ch = str.charAt(i) + "";
Object och = map.get(ch);
if(och == null){
map.put(ch, new Integer(1));
}else{
map.put(ch, new Integer(((Integer)och).intValue()+ 1));
}
}
Iterator it = map.keySet().iterator();
System.out.println("字符串的总数是:" + str.length());
System.out.println("/的数量是 " + map.get("/"));
while(it.hasNext()){
// String key = (String)it.next();
System.out.println("字母 " + key + " 的数量是 " + map.get("/"));
}
}
2024-07-28 10:13:40
import java.util.Scanner;
public class test3 {
public static void main(String [] args){
System.out.print("inuput : ");
Scanner input=new Scanner(System.in);
int [] digit =new int[256];
String inputString = input.next();
//为了避免在输入的时候错误的键入了空格和table,进行一下处理
//以空格为分隔符分割字符串
String [] strings=inputString.split(" ");
String inputString1="";
//将分割后的字符串重新连接起来
for(String str : strings){
inputString1+=str;
}
//以table为分隔符分割字符串
strings=inputString.split(" ");
//将分割后的字符串重新连接起来
String inputString2="";
for(String str : strings){
inputString2+=str;
}
String returnString="";
for (int i = 0; i < inputString2.length(); i++) {
digit[inputString.charAt(i)-'!']++;
//将重复的字符输出,这里为什么是2呢有人会问重复次数也可以大于2啊?
//是因为大于2的在2的时候已经被输出,为了避免重复次数大于2的字符被重复输出,所以这里只能是2
if(digit[inputString.charAt(i)-'!']==2){
returnString+=inputString.charAt(i);
}
}
System.out.print(returnString);
}
}
2024-07-28 20:37:50
2024-07-28 05:54:03