2019暑假Java学习笔记(二)
0709,0710
本篇笔记内容较少较简单,多数语法与C语言相同
基础语法(下)
条件语句、循环语句以及跳转语句、数组的相关操作以及用户输入的操作。
流程控制
常见的:条件语句、循环语句、跳转语句。
if语句
1.语法(与C语言基本相同)
2.注意:条件语句都是利用条件表达式的真或假来决定执行路径,Java里不允许将一个数字作为布尔值使用,虽然这在C和C++里是允许的。
switch语句
1.语法(与C语言基本相同)
switch(表达式){
case 值1:
代码块1
break;
case 值2:
代码块2
break;
default:
默认执行的代码块
}
while语句和do-while语句
1.语法(与C语言基本相同)
do{
代码块
}while(条件);
for语句
1.语法(与C语言基本相同)
break关键字
1.语法(与C语言基本相同)
continue关键字
1.语法(与C语言基本相同)
数组
一维数组
1.声明数组的语法
数据类型[] 数组名;
或者
数据类型 数组名[];(这种跟C语言基本一样)
数组名为合法的变量名
2.为数组分配空间的语法
数组名 = new 数据类型 [数组长度];
也可以将1和2合并,在声明的同时分配空间。
3.将一个数组赋值给另一个数组
int [] a1 = {1,2,3};
int [] a2;
a2 = a1;
这里只是复制了一个引用,即a2和a1是相同数组的不同名称
4.使用foreach遍历数组
for语句在数组内可以使用特殊简化版本
for(元素类型 元素变量:遍历对象){
执行的代码
}
举例:
public class JudgePrime{
public static void main(String[] args){
int [] ages = {12,18,9,33,45,60};
int i = 1;
for(int age:ages){
System.out.println("数组中第"+i+"个元素是"+age);
i++;
}
}
}
二维数组
1.声明和分配空间的语法
数据类型 [][] 数组名 = new 数据类型[行的个数][列的个数];
或者
数据类型 [][] 数组名;
数组名 = new 数据类型[行的个数][列的个数];
也可以
数据类型 [][] 数组名 = {
{第一行值1,第一行值2,...},
{第二行值1,第二行值2,...},
...
{第n行值1,第n行值2,...}
};
注意除了最后一行外,每行右大括号后都跟一个逗号
用户输入操作
上一篇已经涉及到了。
1.在开头写上:
import java.util.Scanner;
即可以使用java.util包下的Scanner类来获取用户的输入
2.下面是输入多种数据以及控制多组数据输入的方法:
Scanner in = new Scanner(System.in);
//获取用户输入的一行数据 返回为字符串
String s = in.nextLine();
//返回用户输入的int值
int i = in.nextInt();
//循环读取int数据,当输入exit时退出循环
while(!in.hasNext("exit")){
System.out.println(in.nextInt());
}
//关闭输入
in.close();
3.如何输入含空格的一句话
使用Scanner.useDelimiter()方法,可以将分隔符修改为回车或其他符号
Scanner scan = new Scnner(System.in).useDelimiter("\n");
System.out.print("请输入:");
String s = scan.next();
System.out.printf("%s",s);
练习题:用户输入
1.要求:
- 获取用户的输入信息(字符串)
- 当用户输入end时,结束输入并打印用户之前输入的所有信息(输入的信息不超过100个)
2.我的代码:
import java.util.Scanner;
public class InputTest{
public static void main(String[] args){
String [] sen=new String[100];
int i = 0;
Scanner in = new Scanner(System.in);
while(!in.hasNext("end")){
sen[i]=in.nextLine();
i++;
}
in.close();
for(int j=0;j<i;j++){
System.out.println(sen[j]);
}
}
}
参考
感想
学习了Java的一些基础语法,感觉是大部分语法与C语言相同,还有一些与Python相同,如格式化输出的方式,import的用法,数组直接赋值等等。
to be continued
总有一天,我会用高亮的代码段让这里焕然一新!这是我的宣言!
2019暑假Java学习笔记(二)的更多相关文章
- 2019暑假Java学习笔记(一)
目录 基础语法(上) HelloWorld 变量 常量 数据类型 整数 浮点数 char类型 boolean类型 String 计算字符串长度 字符串比较 字符串连接 charAt()方法 字符串常用 ...
- 2019暑假Java学习笔记(三)
目录 面向对象 对象 构造方法 引用与对象实例 static final 封装 this 继承 super 方法重载与重写 多态 抽象类 接口 内部类 成员内部类 静态内部类 局部内部类 匿名内部类 ...
- Java学习笔记二十九:一个Java面向对象的小练习
一个Java面向对象的小练习 一:项目需求与解决思路: 学习了这么长时间的面向对象,我们只是对面向对象有了一个简单的认识,我们现在来做一个小练习,这个例子可以使大家更好的掌握面向对象的特性: 1.人类 ...
- 数组排序、递归——(Java学习笔记二)
升序: 选择排序: 选定一个元素,一次和后面的元素相比较,如果选定的元素大雨后面的比较元素,就交换位置 先出现最小值,最后出现最大值. public stat ...
- Java学习笔记二:数据类型II
GitHub代码练习地址:https://github.com/Neo-ML/JavaPractice/blob/master/Intpractice3.java 一 Java中的数据类型 Java ...
- Java学习笔记二十八:Java中的接口
Java中的接口 一:Java的接口: 接口(英文:Interface),在JAVA编程语言中是一个抽象类型,是抽象方法的集合,接口通常以interface来声明.一个类通过继承接口的方式,从而来继承 ...
- Java学习笔记二十七:Java中的抽象类
Java中的抽象类 一:Java抽象类: 在面向对象的概念中,所有的对象都是通过类来描绘的,但是反过来,并不是所有的类都是用来描绘对象的,如果一个类中没有包含足够的信息来描绘一个具体的对象,这样的类就 ...
- Java学习笔记二十五:Java面向对象的三大特性之多态
Java面向对象的三大特性之多态 一:什么是多态: 多态是同一个行为具有多个不同表现形式或形态的能力. 多态就是同一个接口,使用不同的实例而执行不同操作. 多态性是对象多种表现形式的体现. 现实中,比 ...
- Java学习笔记二十四:Java中的Object类
Java中的Object类 一:什么是Object类: Object类是所有类的父类,相当于所有类的老祖宗,如果一个类没有使用extends关键字明确标识继承另外一个类,那么这个类默认继承Object ...
随机推荐
- python错误日志记录工具,解决项目排错问题
我们写项目的时候难免会遇到代码报错的问题,遇到这样的问题了如何快速的定位问题并解决问题呢? 我今天来整理了利用python只带的工具来解决这个问题,我能需要使用的库有: logging os 这些都是 ...
- 【重大更新】Qlik Sense September 2018重磅发布(附下载)
作为数据分析领域领导者,Qlik,始终致力于通过产品创新来帮助企业客户撬动数据力量.近日,Qlik Sense September 2018如期而至,不仅对原有版本进行了众多优化,还发布了一系列能够提 ...
- Ubuntu16.04 网络配置
Ubuntu 网络配置 安装Ubuntu操作系统之后,为了通过Xshell连接主机,或者连接其他主机.需要进行如下网络配置和ssh服务配置. 1 网络配置 1.1 修改网络配置信息 sudo vi / ...
- ElasticSearch(十一):Spring Data ElasticSearch 的使用(一)
1.环境准备 我本地使用的环境为: 虚拟机版本:Centos 7.3 两台 IP 分别为:192.168.56.12, 192.168.56.13 Elasticsearch版本:6.4.0 ( ...
- curl请求https资源的时候出现400
在nginx上配置了一个新的域名, 习惯性地用curl请求看看有没有配置错误 因为是https的, 所以 $curl 'https://test.test.com/' -x 127.0.0.1:443 ...
- Windows定时任务下载linux服务器批量文件到本地
编写批文件 1.1 编写main.bat文件 E: cd logs ftp -n -s:"E:\logs\mget.bat" 1.2 编写mget.bat文件 open ip地址 ...
- <? extends T> 及 <? super T> 重温
<? extends T> 及<? super T> 重温 本文针对泛型中<? extends T> 及<? super T>的主要区别及使用用途进行讨 ...
- rocketmq那些事儿之本地调试环境搭建
上一篇文章中我们已经介绍过rocketmq的集群环境搭建,然而在源码的学习中我们还需要进行本地的调试和问题的定位查找,毕竟还是在本地方便些,今天就说一说如何进行源码的本地调试 下载编译 对于rocke ...
- 《exception》第九次团队作业:Beta冲刺与验收准备(第二天)
一.项目基本介绍 项目 内容 这个作业属于哪个课程 任课教师博客主页链接 这个作业的要求在哪里 作业链接地址 团队名称 Exception 作业学习目标 1.掌握软件黑盒测试技术:2.学会编制软件项目 ...
- 前端Map封装源码
源于后台思路,简单封装了一下Map插件,方便以后使用. function Map() { this.elements = new Array(); //获取MAP元素个数 this.size = fu ...