当前位置: 首页 > wzjs >正文

如何自己做收费的视频网站免费软件下载网站

如何自己做收费的视频网站,免费软件下载网站,seo com,做自己的游戏网站一、程序逻辑控制(顺序、选择&循环) 顺序结构就不多介绍了,就是各个语句按照先后顺序进行执行 (1)选择结构 三大选择类型:if、if-else、if-else if-else以及悬浮else的问题 基本已经在之前在C语言文章…


一、程序逻辑控制(顺序、选择&循环)

顺序结构就不多介绍了,就是各个语句按照先后顺序进行执行

(1)选择结构

三大选择类型:if、if-else、if-else if-else以及悬浮else的问题

基本已经在之前在C语言文章已经讲过,这里不过多赘述

只需要注意两个问题

1、Java中条件表达式只能是布尔型(Boolean,即结果是True或False)

2、表达式不能写的太复杂,比如你把短路表达式写进去,编译器可能会报错之前的C语言博客https://blog.csdn.net/Pluchon/article/details/147186769?fromshare=blogdetail&sharetype=blogdetail&sharerId=147186769&sharerefer=PC&sharesource=Pluchon&sharefrom=from_link

这里我们着重来讲下在Java中代码书写风格:示例代码↓

int num1 = 5;
if (num1 % 2 == 0) {System.out.println("是偶数");} else {System.out.println("是奇数");
}
int num2 = -1;
if (num2 > 0) {System.out.println("是正数");} else if (num2 < 0) {System.out.println("是负数");} else {System.out.println("是0");
}

在Java中,我们起始大括号“{”写在条件判断右边

而结束大括号“}”写在左边并且写在else之前

如果你有很多代码需要格式化成这种格式怎么办?

在Java的一个编译器Idea中,我们可以选中区域按住快捷键Ctrl+Alt+L

这个之前也有介绍过,但是在Java中有几个特殊之处:之前的博客文章https://blog.csdn.net/Pluchon/article/details/147191166?fromshare=blogdetail&sharetype=blogdetail&sharerId=147191166&sharerefer=PC&sharesource=Pluchon&sharefrom=from_link

1、Switch表达式可写字符型,比如下面这段代码,结果自然就是输出正确啦

char str1 = '中';switch (str1) {case '中':System.out.println("输出正确");break;default:System.out.println("输出错误");break;}

2、表达式不能是Long、Float、Double、Boolean这四大类

(2)循环结构

这个之前也介绍过了,但是在Java中有几个特殊之处:之前的博客文章https://blog.csdn.net/Pluchon/article/details/147191166?fromshare=blogdetail&sharetype=blogdetail&sharerId=147191166&sharerefer=PC&sharesource=Pluchon&sharefrom=from_link1、Java中不可用写while(1)这种死循环,要写也只能写while(true)

2、Java中创建循环有快捷方式:输入for后选择fori,直接生成循环模板

3、之前的博客文章有个寻找素数的题,里面有个循环终止条件

4.在Java中我们开平方可直接写成Math.sqrt()即可

我们写一个求水仙花数的Java代码:

public static void main6(String[] args) {//求出0~n之间的所有“水仙花数”并输出int simple4 = 1;while(simple4<10){System.out.print(simple4+" ");simple4++;}System.out.print("\n");int num3 = 10;while(num3<=99999){int count = 0;//先统计是几位数int temp = num3;while(temp != 0) {temp /= 10;count++;}int sum = 0;//用来计算次方和temp = num3;while(temp != 0){sum += Math.pow(temp%10,count);temp /= 10;}if(sum==num3){System.out.print(num3+" ");}num3++;}}

二、程序输入&输出

(1)程序的输出

基本上跟C语言差不多,唯一有区别的就是print和println,以下是区别:

System.out.println("hello world");//这个是换行输出
System.out.print("hello world"+" ");//这个是不换行输出
System.out.printf("%s","hello world");//这个是格式化规范输出,很少使用

(2)程序的输入

对比C语言我们Java的输入需要使用Scanner包装类处理我们的输入

其中必须写的一行代码:

import java.util.Scanner;
Scanner sc = new Scanner(System.in);

注意:我们在输入Scanner后回车,会自动进行导包操作

Scanner后面的sc可以取其他名字,但建议sc


其次,我们再创建变量,接收我们输入的值

int input = sc.nextInt();

注意:你输入的是什么类型,初始化成什么类型,目前只能读取到一个输入的值

这里我们讲下next和nextLine的区别:next遇到空格读取停止,而nextLine会读取一行的内容


在你处理完输入程序后,最后可以选择关闭Scanner的资源

sc.close();

System.out.println("年龄");int age = sc.nextInt();System.out.println("姓名");String high = sc.nextLine();//注意看这里是nextLineSystem.out.println("年龄:"+age);System.out.println("姓名:"+high);

为什么我输入年龄后敲完空格回车直接打印结果了呢,我姓名都没来得及输入啊

注意看代码,nextLine读取的是一行的内容,而你输入完年龄后回车会产生一个空行

nextLine把这一行误以为是你输入的内容,把它读取走了

只需要再添加一个nextLine来读取空白行就好

System.out.println("年龄");int age = sc.nextInt();sc.nextLine();//单独添加这一行,让这一行把空行读走System.out.println("姓名");String high = sc.nextLine();System.out.println("年龄:"+age);System.out.println("姓名:"+high);


循环输入,我们就写一个求和的循环输入吧

int sum = 0;while(sc.hasNextInt()) {int input = sc.nextInt();//←毕竟这里是nextIntsum += input;}System.out.println(sum);

hasNextInt中int类型表示你输入除整数以外的数循环终止

建议输入什么就写什么类型的hasNext

注意这段代码有个陷阱:

你提前终止循环输入,会导致你输入的数没有加到sum中去,你输入完数后回车以下
此时再按ctrl+d才会有正确结果

三、使用方法

public static void main(String[] args) {

我们上面那一行就是main方法的基本格式

public static是修饰符,void是返回类型,main是方法名,括号里的东西是形参

你可以把方法理解成一个工厂,原材料进去成品出来

Java中的方法不需要声明,而且你写哪里都可以

毕竟Java是全局搜索的,而且方法不可以嵌套,不像C/C++函数一样

其生命周期,作用域,就是在“{}”内部,进入开始,出去结束 如何调用方法呢?

我们这里创建一个求两数之和的方法,然后就跟C语言调用函数一样去调用方法

public static int addSimple (int num1,int num2){int ret = num1+num2;return ret;}

如果这个方法有返回类型,我们就用一个变量来接收

如果方法无返回值,则默认是为void,不需要写变量来接收

注意你方法返回的是什么类型,你就需要用什么类型去接收

int result = addSimple(1,2);

因此我们方法的创建和调用之间形成了三匹配:

方法返回类型,返回值类型,接受方法返回值的变量的类型

你肯定写过在C语言中通过函数交换两个数字,用的是地址

但是在Java中,不存在地址的概念,所以Java很安全

public static void swap(int num3,int num4){//这个是方法的定义int temp = num3;num3 = num4;num4 = temp;
}int num3 =1,num4 = 2;swap(1,2);System.out.println(num3+" "+num4);

我们发现并没有交换,原理跟C语言差不多,你形参只是实参的一份临时拷贝

也就是说形参有自己的一块空间,你交换了形参并不等于交换了实参

在Java中只有传值调用,而且方法调用同样是要在栈上开辟空间

四、方法重载

接着我们将方法重载,这个跟C++很像

我们每个重构的方法可以去相同的方法名,在方法调用的时候编译器自己选择

重载三个条件

方法名相同,(参数列表/参数类型/参数个数)不同,并且和返回类型无关!!

我们就拿两数之和来举例

public static int addSimple (int num1,int num2){int ret = num1+num2;return ret;//return作为方法结束的标志}public static double addSimple (double num1,double num2){double ret = num1+num2;return ret;}int ret1 = addSimple(1,2);double ret2 =addSimple(1.5,2.5);

下满那个方法就是addSimple方法的重载,这个重构的方法是专门求浮点型的

函数返回值支持链式表达式,比如return (1/2)+6

仅仅改变方法返回值类型是不会构成方法重载的

 五、方法递归

在C语言中函数有递归,那在Java中方法自然也有递归,基本上和C语言类似

这里列出特殊之处:如果你无线递归下去,没有终止条件,会导致栈溢出,报错如下

给出一个例题练习:递归一个数字,并把各个位数数字求和,比如2255,各个位数之和是14

public static void print(int num){if(num<10){System.out.print(num+" ");}else {print(num / 10);//递推System.out.print(num % 10+" ");//回归的时候打印}}int ret5 = addPlus(2255);
System.out.println(ret5);

为什么不写else会导致栈溢出?
这是因为在if中不存在return语句,return语句作用就是终止后面代码执行
即使你的num小于了10,上面执行完了,下面的else部分还是会执行


之前在C语言已经写过很多递归练习,这里给出之前写的博客链接,写法基本上一致

C语言中递归介绍和练习https://blog.csdn.net/Pluchon/article/details/147530549?fromshare=blogdetail&sharetype=blogdetail&sharerId=147530549&sharerefer=PC&sharesource=Pluchon&sharefrom=from_linkC语言中递归经典练习https://blog.csdn.net/Pluchon/article/details/147514375?fromshare=blogdetail&sharetype=blogdetail&sharerId=147514375&sharerefer=PC&sharesource=Pluchon&sharefrom=from_link

这里给出Java递归的汉诺塔问题的代码

public static void hanNuoTa (int num,char pos1,char pos2,char pos3){if(num==1) {//递归终止条件System.out.print(pos1+"→"+pos3+" ");}else {//一定要写else,因为递归式子中无return,会导致无限递归hanNuoTa(num - 1, pos1, pos3, pos2);System.out.print(pos1 + "→" + pos2+" ");hanNuoTa(num - 1, pos2, pos1, pos3);}}public static void main(String[] args) {Scanner sc = new Scanner(System.in);int input = sc.nextInt();hanNuoTa(input,'A','B','C');}


作者基础不是很强,文章撰写难免会有疏漏之处,欢迎指出,我们友好交流


Git码云仓库链接:

本文章使用的代码https://gitee.com/pluchon/java-career/tree/master/TestProject20250515/src


END


文章转载自:

http://phRGamTQ.bpLqh.cn
http://TIPqyxps.bpLqh.cn
http://sRUbgVr1.bpLqh.cn
http://a0b4Urh1.bpLqh.cn
http://QxBoYDH8.bpLqh.cn
http://pRv6FSdB.bpLqh.cn
http://v03JpmzW.bpLqh.cn
http://xjxzVhP8.bpLqh.cn
http://onxvllPD.bpLqh.cn
http://NLKRb4mO.bpLqh.cn
http://VSScJevL.bpLqh.cn
http://EIsS90uu.bpLqh.cn
http://hqRgPdms.bpLqh.cn
http://vDliLjie.bpLqh.cn
http://WzYnVngl.bpLqh.cn
http://pK4s7xX8.bpLqh.cn
http://jLUqRRnI.bpLqh.cn
http://UE4JLqyj.bpLqh.cn
http://lhasrhEX.bpLqh.cn
http://MdX8HOJ3.bpLqh.cn
http://bjkJH1xw.bpLqh.cn
http://I6WMcjVW.bpLqh.cn
http://TdfKkHbV.bpLqh.cn
http://66rysQP2.bpLqh.cn
http://5JGBVnqB.bpLqh.cn
http://Jz9WgwuC.bpLqh.cn
http://GNocnVLT.bpLqh.cn
http://cGbq1HPI.bpLqh.cn
http://LsvXFSBx.bpLqh.cn
http://Vc3QZJ69.bpLqh.cn
http://www.dtcms.com/wzjs/657848.html

相关文章:

  • 邵阳建设网站公司做网站效果图
  • 沈阳软件公司 网站制作舞美设计制作公司
  • 深圳云网站建站公司商务局网站建设
  • 学生做网站的软件网址大全浏览器下载
  • 网站分类目录查询中国最大网站建设公司
  • 电子商务网站建设与管理实训总结手机网站漂浮怎么做
  • 深圳搜豹网站建设公司推广公司怎么找
  • 花店网站源码汉中中药材初加工平台
  • 做网站的程序员厦门关键词seo排名网站
  • 网站做水印有没有影响吗软件定制开发公司排名
  • 做网站最好的软件ps制作网站模板
  • 做网站需要每年都缴费吗wordpress用户修改邮箱
  • 网站建设服务商城整站优化和单词
  • 中医网站模板做携程网站的技术
  • 网站后台上传图片不显示淘宝店铺首页装修
  • 佛山建设局官方网站龙岗网红公园
  • 购物网站主页设计图中国网重庆频道
  • 做网站和微信公众号如何招生免费资源部落wordpress
  • 单位网站建设典型材料免费ai写作网站3000字
  • 企业宣传网站建设用jsp做网站步骤
  • 档案网站建设与知识管理好的文案网站
  • 重庆最新网站备案网站建设方案文本模板
  • c2c电子商务网站建设吉林省建设厅网站特殊工种
  • 玉溪住房和城乡建设局网站织梦手机网站怎么修改密码
  • 番禺区住房和建设局物业网站淘宝客网站都用什么做
  • 域名 和网站有什么区别朝阳周边网站建设
  • 网站建设需要哪些准备莱芜网站建设哪里有
  • 装饰网站建设套餐报价seo外贸网站建设
  • 门户网站建设自查整改报告wordpress 自带的ajax
  • wordpress 浏览人数官网seo优化找哪家做