
正文
java代码的详细解说 java代码大全及详解
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
java中for嵌套for循环的详细讲解?
就是 一个执行循序问题,先执行外面的循环:
1 for(int i=0;i10;i++){
2 for(int j=0;j3;j++) {
3 System.out.print("i*j="+i*j);
4 }
5 }
6 ....
....
当开始循环的时候,i=0,然后继续运行,j=0,输出i*j=0
此时循环从j=1,i仍旧为0 , j的值为2
输出结果为i*j=0,此时j++,j的值为2
循环从j=2,i仍旧为0 ,输出结果为i*j=0
当j=3,不满足j3跳出内部for循环,执行外部for循环第二行代码,此时i++,i的值变为1
循环i=1, j=0时,结果为i*j=0
i=1,j=1 结果为i*j=1;
;;;;;;
;;;;;
当i循环到9,j=2是,输出循环结果为i*j=18
当i=10,不满足i10,跳出外部循环,执行第6行
我只是拿一个例子给你讲解的,我像这样比给你讲解概念好理解。
一,在for循环中,循环控制变量的初始化和修改都放在语句头部分,形式较简洁,且特别适用于循环次数已知的情况。在while循环中,循环控制变量的初始化一般放在while语句之前,循环控制变量的修改一般放在循环体中,形式上不如for语句简洁,但它比较适用于循环次数不易预知的情况(用某一条件控制循环)。
二,foreach不是一个关键词,它指的是一种java里的循环方式,顾名思义代表对于每一个,表示每次给你要遍历的东西生成一个降维对象,然后访问。
比如说for(a:b),b是你要遍历的东西,每次循坏都会生成一个b的子集a,a是你自己命名的一个元素,在这个for里我们访问的就是这个a,每次循环都会访问一个新的a。
三,看你图里的代码,balances是二维数组,假设看成一个矩阵,我们需要一行一行遍历它,那么double[] row就是这个矩阵每行的意思。回到代码,for(double[] row:balances)就是指对于balances的每行row,同样的道理for(double b:row)的意思是对于每行row里的每个元素b,因为row是一维的数组,对它降维就是单个元素了。其中的row和b都是由你自己命名的,爱起什么名就起什么名,起完了名就可以在循环体里直接用了。遍历顺序就是顺序遍历,从前到后,跟你用i++,j++一样。
这种写法的好处在于,一是不需要管遍历的次数,二是你定义的子元素可以直接用,看起来比a[i]、a[j]方便。
相关问答
Q1: 如何用Java程序编程,最好讲解一下。题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对
这道题目考察的是运用递归(数列)的思路去解决问题。
假设到第24个月,示例代码如下:
public class woo {
public static void main(String args[]) {
System.out.println(fib(24));
}
private static int fib(int n) {
if (n == 1 || n == 2) {
return 1;
} else {
return fib(n - 1) + fib(n - 2);
}
}
}
扩展资料:
斐波那契数列(Fibonacci sequence),又称黄金分割数列、因数学家列昂纳多·斐波那契(Leonardoda Fibonacci)以兔子繁殖为例子而引入,故又称为“兔子数列”,指的是这样一个数列:1、1、2、3、5、8、13、21、34、……。
在数学上,斐波纳契数列以如下被以递推的方法定义:F(1)=1,F(2)=1, F(n)=F(n-1)+F(n-2)在现代物理、准晶体结构、化学等领域,斐波纳契数列都有直接的应用,为此,美国数学会从1963年起出版了以《斐波纳契数列季刊》为名的一份数学杂志,用于专门刊载这方面的研究成果。
参考资料:
百度百科:斐波那契数列
百度百科:递归函数
Q2: java里面开头前两行代码是什么意思,求解答。本人编程小白在线求教。
你说的是 public class Dome和public static void main(String[] arges)吧
public 公有的,表示可以被其他类调用相对的还要private私有的。
class 类,后面跟的是类名如果前面加上public那么类名必须要和文件名一样。
static 静态的,静态类型的方法只能使用静态类型上字段
void 没有返回值,相对的如果这里写到是int那么就返回int类型的,写的是什么就返回什么
main(String[] arges),主方法,这个方法是一个特殊的方法,它代表了一个程序的入口。在定义其他方法的时候不能用这个名称。括号内的是传参,前面的是类型,后面是是定义的名称,供在方法内所以,相同的在调用方法都时候也要写入参数比如
public static int abs(int i){
if(i0){
i=-i
}
return i //return方法是用于返回参数
}
public static void main(String arges){
abs(-10)//在同一类下可以直接写方法名调用自己定义的方法,现在这个是返回数的绝对值
}
其实对于初学者这些可以先不接触,可以在后面需要写自己的类或者调用别人的类的时候研究
Q3: 怎么看懂java代码?
想要看到都能java代码,需要了解编程的基础知识,变量,表达式,程序执行结构,逻辑判断等等。最重要是要学会如何调试代码,慢慢练习,熟练了自然就会了。
Q4: java三个数排序比较大小的完整代码,并给出详细解释,初学者,谢谢
import java.util.Arrays;
import java.util.Collection;
public class Demo2 {
public static void main(String[] args) {
// 这是你的三个数
int[] arr = { 12, 32, 18 };
// 两层嵌套循环
for (int i = 0; i arr.length; i++) {
for (int j = 0; j i; j++) {
// 如果后者小于前者,让他们交换位置,一直循环
// 直到每个数字都从头到尾跟数组里的每个数字比较一次
if (arr[i] arr[j]) {
// 这三步就是交换位置,相信聪明的你一定看得懂了
arr[i] = arr[i] + arr[j];
arr[j] = arr[i] - arr[j];
arr[i] = arr[i] - arr[j];
}
}
}
//最后打印出来
for (int i = 0; i arr.length; i++) {
System.out.println(arr[i]);
}
}
}
资料拓展:
Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论
java代码的详细解说的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java代码大全及详解、java代码的详细解说的信息别忘了在本站进行查找喔。






