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编程基础(实验楼)

Scanner的一些用法



感想

学习了Java的一些基础语法,感觉是大部分语法与C语言相同,还有一些与Python相同,如格式化输出的方式,import的用法,数组直接赋值等等。



to be continued

总有一天,我会用高亮的代码段让这里焕然一新!这是我的宣言!

2019暑假Java学习笔记(二)的更多相关文章

  1. 2019暑假Java学习笔记(一)

    目录 基础语法(上) HelloWorld 变量 常量 数据类型 整数 浮点数 char类型 boolean类型 String 计算字符串长度 字符串比较 字符串连接 charAt()方法 字符串常用 ...

  2. 2019暑假Java学习笔记(三)

    目录 面向对象 对象 构造方法 引用与对象实例 static final 封装 this 继承 super 方法重载与重写 多态 抽象类 接口 内部类 成员内部类 静态内部类 局部内部类 匿名内部类 ...

  3. Java学习笔记二十九:一个Java面向对象的小练习

    一个Java面向对象的小练习 一:项目需求与解决思路: 学习了这么长时间的面向对象,我们只是对面向对象有了一个简单的认识,我们现在来做一个小练习,这个例子可以使大家更好的掌握面向对象的特性: 1.人类 ...

  4. 数组排序、递归——(Java学习笔记二)

    升序:      选择排序:         选定一个元素,一次和后面的元素相比较,如果选定的元素大雨后面的比较元素,就交换位置         先出现最小值,最后出现最大值. public stat ...

  5. Java学习笔记二:数据类型II

    GitHub代码练习地址:https://github.com/Neo-ML/JavaPractice/blob/master/Intpractice3.java 一  Java中的数据类型 Java ...

  6. Java学习笔记二十八:Java中的接口

    Java中的接口 一:Java的接口: 接口(英文:Interface),在JAVA编程语言中是一个抽象类型,是抽象方法的集合,接口通常以interface来声明.一个类通过继承接口的方式,从而来继承 ...

  7. Java学习笔记二十七:Java中的抽象类

    Java中的抽象类 一:Java抽象类: 在面向对象的概念中,所有的对象都是通过类来描绘的,但是反过来,并不是所有的类都是用来描绘对象的,如果一个类中没有包含足够的信息来描绘一个具体的对象,这样的类就 ...

  8. Java学习笔记二十五:Java面向对象的三大特性之多态

    Java面向对象的三大特性之多态 一:什么是多态: 多态是同一个行为具有多个不同表现形式或形态的能力. 多态就是同一个接口,使用不同的实例而执行不同操作. 多态性是对象多种表现形式的体现. 现实中,比 ...

  9. Java学习笔记二十四:Java中的Object类

    Java中的Object类 一:什么是Object类: Object类是所有类的父类,相当于所有类的老祖宗,如果一个类没有使用extends关键字明确标识继承另外一个类,那么这个类默认继承Object ...

随机推荐

  1. python错误日志记录工具,解决项目排错问题

    我们写项目的时候难免会遇到代码报错的问题,遇到这样的问题了如何快速的定位问题并解决问题呢? 我今天来整理了利用python只带的工具来解决这个问题,我能需要使用的库有: logging os 这些都是 ...

  2. 【重大更新】Qlik Sense September 2018重磅发布(附下载)

    作为数据分析领域领导者,Qlik,始终致力于通过产品创新来帮助企业客户撬动数据力量.近日,Qlik Sense September 2018如期而至,不仅对原有版本进行了众多优化,还发布了一系列能够提 ...

  3. Ubuntu16.04 网络配置

    Ubuntu 网络配置 安装Ubuntu操作系统之后,为了通过Xshell连接主机,或者连接其他主机.需要进行如下网络配置和ssh服务配置. 1 网络配置 1.1 修改网络配置信息 sudo vi / ...

  4. ElasticSearch(十一):Spring Data ElasticSearch 的使用(一)

    1.环境准备 我本地使用的环境为: 虚拟机版本:Centos 7.3 两台   IP 分别为:192.168.56.12, 192.168.56.13 Elasticsearch版本:6.4.0  ( ...

  5. curl请求https资源的时候出现400

    在nginx上配置了一个新的域名, 习惯性地用curl请求看看有没有配置错误 因为是https的, 所以 $curl 'https://test.test.com/' -x 127.0.0.1:443 ...

  6. Windows定时任务下载linux服务器批量文件到本地

    编写批文件 1.1 编写main.bat文件 E: cd logs ftp -n -s:"E:\logs\mget.bat" 1.2 编写mget.bat文件 open ip地址 ...

  7. <? extends T> 及 <? super T> 重温

    <? extends T> 及<? super T> 重温 本文针对泛型中<? extends T> 及<? super T>的主要区别及使用用途进行讨 ...

  8. rocketmq那些事儿之本地调试环境搭建

    上一篇文章中我们已经介绍过rocketmq的集群环境搭建,然而在源码的学习中我们还需要进行本地的调试和问题的定位查找,毕竟还是在本地方便些,今天就说一说如何进行源码的本地调试 下载编译 对于rocke ...

  9. 《exception》第九次团队作业:Beta冲刺与验收准备(第二天)

    一.项目基本介绍 项目 内容 这个作业属于哪个课程 任课教师博客主页链接 这个作业的要求在哪里 作业链接地址 团队名称 Exception 作业学习目标 1.掌握软件黑盒测试技术:2.学会编制软件项目 ...

  10. 前端Map封装源码

    源于后台思路,简单封装了一下Map插件,方便以后使用. function Map() { this.elements = new Array(); //获取MAP元素个数 this.size = fu ...