导航:首页 > 编程语言 > javastring个数

javastring个数

发布时间:2025-02-04 22:26:45

java中String类型有没有长度的限制

严格来说,String确实有长度限制。

1、String内部使用一个char[]数组来存放字符串的内容,数组下标是整型(也可以参考String的构造方法String(char value[], int offset, int count) ,可以知道字符数量是用整型表示),整型(Java规定32位)表示范围是2G,也就是说,Java数组最大的长度是2G,即字符串不能超过2G个字符。

2、Java的数组大小还有没有别的限制?事实上数组大小不能超过Java堆的大小,而Java堆的最大尺寸可以通过启动参数指定,如果Java堆开得足够大,数组的最大长度是可以不断增大的。

3、所以,理论上,字符串不能超过2G个字符,少于2G个字符都有可能。

⑵ 用java编程统计用户从键盘输入的字符串中所包含的字母,数字和其他字符串的个数

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class _1 {

/**
* @param args
* @throws IOException
*/
public static void main(String[] args) throws IOException {
// TODO Auto-generated method stub

String zifuchuan = new String("");
int hanzishu = 0;
int zimu = 0;
int kongge = 0;
int shuzi = 0;
int qita = 0;
System.out.print("请输入一行字符:");
BufferedReader stdin = new BufferedReader(new InputStreamReader(
System.in));
zifuchuan = stdin.readLine();
byte[] bytes = zifuchuan.getBytes();
for (int i = 0; i < bytes.length; i++) {
if ((bytes[i] >= 65 && bytes[i] <= 90)
|| (bytes[i] >= 97 && bytes[i] <= 122))
zimu++;
else if (bytes[i] == 32)
kongge++;
else if (bytes[i] >= 48 && bytes[i] <= 57)
shuzi++;
else if (bytes[i] < 0)
hanzishu++;
else
qita++;
}
System.out.println("字符串所占字节个数为:" + bytes.length);
System.out.println("汉字个数为:" + hanzishu / 2);
System.out.println("英文字母个数为:" + zimu);
System.out.println("空格个数为:" + kongge);
System.out.println("数字个数为:" + shuzi);
System.out.println("其他字符个数为:" + qita);
}

}

⑶ 如何用java String 查找字符个数

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);
}
}


楼主算是问对人了

马上给答案


楼主虽然我这个最终目的不是统计每个字符的个数,但是代码里面已经实现了这个功能,只要稍作修改就可以,我的主要功能是输出重复的字符!


希望我给的代码楼主还满意

阅读全文

与javastring个数相关的资料

热点内容
数据库查询系统源码 浏览:614
php5314 浏览:354
完美国际安装到哪个文件夹 浏览:666
什么app可以扫一扫做题 浏览:537
程序员编码论坛 浏览:923
淘点是什么app 浏览:658
中国高等植物pdf 浏览:453
51单片机时间 浏览:181
后台如何获取服务器ip 浏览:265
单片机流水灯程序c语言 浏览:232
程序员第二职业挣钱 浏览:237
运行里怎么输入服务器路径 浏览:840
pythonstepwise 浏览:509
刘一男词汇速记指南pdf 浏览:62
php认证级别 浏览:366
方舟编译啥时候推送 浏览:1010
php手机验证码生成 浏览:675
哲学思维pdf 浏览:14
凌达压缩机有限公司招聘 浏览:534
weblogic命令部署 浏览:36