㈠ java怎麼生成一個指定長度的字元串
public class GenString {
public static String gen(int length) {
char[] ss = new char[length];
int[] flag = {0,0,0}; //A-Z, a-z, 0-9
int i=0;
while(flag[0]==0 || flag[1]==0 || flag[2]==0 || i<length) {
i = i%length;
int f = (int) (Math.random()*3%3);
if(f==0)
ss[i] = (char) ('A'+Math.random()*26);
else if(f==1)
ss[i] = (char) ('a'+Math.random()*26);
else
ss[i] = (char) ('0'+Math.random()*10);
flag[f]=1;
i++;
}
return new String(ss);
}
}
㈡ Java怎麼生成一個指定長度的字元串類似於驗證碼
我寫了個方法,參數是你指定的長度,按照這個方法,可以隨機生成字元串。但是不保證重復,可以參考一下。
publicclassRandomString{
privatefinalstaticbyte[]seed={'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z'};
(intlength){//參數為指定的字元串長度
Stringstr="";
StringBufferbuffer=newStringBuffer();
for(intj=0;j<length;j++){
inti=(int)(Math.random()*25);
charb=(char)seed[i];
buffer.append(b);
}
str=buffer.toString();
returnstr;
}
publicstaticvoidmain(String[]args){
StringrandomStr=getRandomString(6);
System.out.println(randomStr);
}
}
㈢ java 固定字元串長度問題:
大量數據的話,定義String[] blanks,裡麵包含10元素,0個空格,1個空格,2個空格....直到9個空格,需要處理的字元串假設是str,結果就是str + blanks[10 - str.length],當然不應該用字元串連接,應該用一個StringBuffer,不需要同步的話考慮StringBuilder,初始化時就固定長度10
String[]blanks={"","","","","","","","","",""};
Stringstr="abc";
StringBuildersb=newStringBuilder(10);
sb.append(str).append(blanks[10-str.length()]);
System.out.println(sb.toString());
sb.delete(0,10);//注意清空sb,可復用此對象
㈣ Java:應該如何將字元串格式化成固定長度呢
隨便自己寫個方便啊。
/**
* 獲取定長的字元串
* @param str 原始字元串
* @param len 固定長度
* @param c 不夠填充的字元
* @return 固定長度的字元串
*/
public static String getFixedLenString(String str, int len, char c) {
if (str == null || str.length() == 0){
str = 「」;
}
if (str.length() == len){
return str;
}
if (str.length() > len){
return str.substring(0,len);
}
StringBuilder sb = new StringBuilder(str);
while (sb.length() < len){
sb.append(c);
}
return sb.toString();
}
㈤ java實現輸出指定長度的隨機字元(大小寫字母和數字)遇到問題
程序輸出錯誤的原因(見圖)
㈥ Java怎麼生成一個指定長度的字元串,且這個字元串必須包含大小寫字母和數字
這個應該可以達到你的要求。
---------------------------------------------------------------------------
public class StringLen {
public static void main(String[] args) {
StringBuffer buff = new StringBuffer();
int len = 10;
if (len < 3) {
// 必須包含大小寫字母和數字
// 那這個字元串最小長度是3.
return;
}
int index = 0;
for (int i = 0; i < len; i++) {
char c = 'a';
int random = (int) (Math.random() * 1000);
if (i > 3) {
index = random % 3;
} else {
index = i;
}
switch (index) {
case 0:
buff.append((char) (97 + random % 26));
break;
case 1:
buff.append((char) (65 + random % 26));
break;
case 2:
buff.append((char) (48 + random % 10));
break;
}
}
System.out.println(buff.toString());
}
}
㈦ java字元串超長截取保留指定長度
可以通過java的」substring「方法截取出對應的字元串,前提是知道開始和結束的字元串的值:
string
getsigninfo
=
reqresult.substring(reqresult.indexof("(")
+
1,
reqresult.indexof(")"));
解釋:上述方法就是截取reqresult字元串的中開始」(「和結束」)「中間部分的內容,」1「就是」)「的長度,之後將獲取的結果賦值給」getsigninfo進行輸出即可「;
備註:以上方法通用於截取字元串,數字」1「和開始結束字元串根據實際需要修改即可。
㈧ java字元串超長截取保留指定長度
可以通過java的」substring「方法截取出對應的字元串,前提是知道開始和結束的字元串的值:
String getSignInfo = reqResult.substring(reqResult.indexOf("(") + 1, reqResult.indexOf(")"));
解釋:上述方法就是截取reqResult字元串的中開始」(「和結束」)「中間部分的內容,」1「就是」)「的長度,之後將獲取的結果賦值給」getSignInfo進行輸出即可「;
備註:以上方法通用於截取字元串,數字」1「和開始結束字元串根據實際需要修改即可。
㈨ Java怎麼生成一個指定長度的字元串,且這個字元串必須包含大小寫字母和數字
/**
* 得到一個隨機的由數字與字母組成的文件名
* @return
* @date :2011-12-2
*/
public static String getRandomName(){
String name="";
Random random = new Random(); // 實例化一個Random對象
int itmp=0;
int length=20;//默認的文件長度是20
try{
length=Integer.valueOf(Config.getSingleConfig(ConfigItem.DOC_NAME_LENGTH));
}catch(Exception e){}
for (int i = 0; i <length ; i++) {
if (random.nextInt(2) == 1) {
itmp = random.nextInt(26) + 65; // 生成A~Z的字母
} else {
itmp = random.nextInt(10) + 48; // 生成0~9的數字
}
char ctmp = (char) itmp;
name += String.valueOf(ctmp);
}
return name;
}