javaforindex
A. java for加大括弧和不加有什麼區別,具體如下。
for 語句 不帶 大括弧 只附帶一條執行語句 不會執行到最後, 至於 帶了大括弧以後 你出錯了 那肯定要不是少了 大括弧 要麼就括的位置不對!
B. Java中for循環條件語句中兩個變數
我給你編譯了這一部分語句。應該是中英文的標點問題。請自行修正!
C. Java中循環和String類indexOf(,)方法的關系
第一個問題,循環為什麼可以跳出?
當循環條件不滿足的時候,也就是(i = numOne.indexOf(numTwo, i)) 的值<0 的時候就能退出跳出
numOne.indexOf(numTwo, i)表示在字元串1里查找字元串2的位置,
如果找不到 或者 索引超過了字元串長度,
函數 就會返回-1,如果是-1.那麼-1>=0 肯定是假,所以循環就會退出
比如12345678 那麼循環會在第一次找到1,後面找不到就返回-1;循環就退出了
比如 ab 索引從0開始. b的索引是1, 如果這個時候"ab".index("b",2); 指定的索引下標2,超過了最大的索引限度, 也返回-1;
indexOf(intch,intfromIndex)
返回在此字元串中第一次出現指定字元處的索引,從指定的索引開始搜索。
為什麼不是+1遞增?
其實本來i要加1遞增的,因為循環條件里,又改變了i的值
第一次循環 numOne.indexOf(numTwo, i) 的結果是0,修改了i的值為0;
條件滿足 (i = 0)>=0; 循環結束後i增加1, 那麼i = 1;
第二次循環 numOne.indexOf(numTwo, i)的結果是6,修改了i的值為6;
條件滿足 (i = 6)>=0; 循環結束後i增加1, 那麼i = 7;
第三次循環 numOne.indexOf(numTwo, i)的結果是6,修改了i的值為10;
條件滿足 (i = 10)>=0; 循環結束後i增加1, 那麼i = 11;
...............同理中間的其他次循環..............
最後的循環 (上次循環後,i=14) i超過了字元串的最大索引13, numOne.indexOf(numTwo, i)就返回-1,修改了i的值為-1;
條件不滿足 (i = -1)>=0; 退出循環,.結束
D. Java For each 如何獲取索引
foreach中沒有索引,但是可以自己加。
1,在foreach中自己加個i計數器。可以得到一個索引,0~length-1。
int index= 0;
for(String str:strings){
// do something
index++;
}
2,或者使用for(int i= 0;i<length;i++)來獲取索引。
for(int i= 0;i<length;i++){
// do something
// i即為索引
}
E. java中在String中查找某字的下標值並循環輸出
//不是特別明白你循環輸出的意思,如果只是要找到下標的話,用String類的indexOf方法就可以了
//按你的意思寫了一下,代碼中包括對indexOf方法的使用,你看一下吧。
public class StringFun {
public static void main(String[] args) {
String str="每次和小朋友玩捉迷藏的時候,我總是等他們先藏好,我就回家。";
System.out.println(str.indexOf("和"));
System.out.println(str.indexOf("小朋友"));
stringFun('次',str);
}
/**
* 求出c字元在str串中的下標並以循環的方式輸出str串
*/
private static void stringFun(char c, String str) {
boolean flag=true;
int index=-1; //用於保存初次比中的下標值
char[] chars=str.toCharArray();
for(int i=0;i<chars.length;i++) {
if(chars[i]==c&&flag) {
index=i;
flag=false;
}
System.out.print(chars[i]);
}
if(index!=-1) System.out.println("\n'"+c+"'字元在串中初次出現的下標為:"+index);
else System.out.println("\n'"+c+"'字元未在串中出現過");
}
}
F. java中 index怎麼用啊,這個關於index的代碼看不懂,求講解~~
這個跟java中的index無關,這裡面index只是自己設置的一個變數。
repeat是用戶輸入的一個整數,進入循環的情況下,用戶又輸入了n個數,依次賦值給數組a的每一項
index=0;
for(i=0; i<n; i++){
if(a[i]>a[index]) index=i;
}
上面這一部分的代碼意思是拿數組a中按下標順序的每一項跟a[0]相比,直到遇到一項比它大(假如下標是j),然後index的值就變成那一項的下標(即:j),然後再拿a[j+1]跟a[index]比,若遇到比它大的再把下標賦給index,這樣一直到數組a最後一項,得到a這個數組中的最大數下標就是index,system.out.println里也就是這個意思。ri++之後若還是小於repeat,則在進入循環
G. java.lang.IndexOutOfBoundsException: Index: 1, Size: 1
這個錯誤是說數組越界了
你第一種寫法news11沒有超過數組下標的范圍,當然正確,第二種寫法則明顯不對了,根據你的錯誤提示可以知道newsList的元素個數為1,java的數組下標是從0開始的,所以news11=0時,第一個元素newsList[0]遍歷了以後,進入第二次循環news11=1時超出了newsList所分配的空間大小(即1),就出現這個錯誤了,不知道你明白了沒有
再說白點,就是你newsList里邊只有一個元素也只有一個元素的空間,結果你想在newsList里邊循環7次,你說可能嗎?
(當然news11=2,news11=3....也會出現這個錯誤,不過news11是不可能循環到>1的數的,因為在news11=1時已經報錯了,程序此時就停止運行了)
P.S:我知道你這個newsList可能不是數組,但是這個問題和數組一樣
H. Java代碼for(int i:int[])什麼意思
這個叫foreach方法的遍歷,意義也就是循環遍歷index下的每一個元素,每個元素賦給i進行操作
在這里index其實就是一個下標的int數組,和for(int i=0;i<index.length;i++){tel+=arr[index[i]]}是一個意思
I. java中index的用法
糾正下,應該是indexOf(獲取字元在字元串中的位置),沒有index方法的。通常是和substring結合是用來進行特定字元串的截取。
舉例:String getSignInfo = reqResult.substring(reqResult.indexOf("(") + 1, reqResult.indexOf(")"));
解釋:上述方法就是截取reqResult字元串的中開始」(「和結束」)「中間部分的容, 」1「就是」)「的長度,之後將獲取的結果賦值給」getSignInfo進行輸出即可「;
備註:以上方法通用於截取字元串,數字」1「和開始結束字元串根據實際需要修改即可。