今日学习

Java API

Scanner

package cn.lsl.day03.demo01;
//导包
import java.util.Scanner; public class demo01Scanner {
public static void main(String[] args) {
//创建键盘录入数据的对象
Scanner sc = new Scanner(System.in); //接收数据
int i = sc.nextInt(); System.out.println("输入的数据为:"+ i);
} }

Random

package cn.lsl.day03.demo01;
//导包
import java.util.Random; //构造方法:public Random():创建一个随机数生成器
//成员方法:public int nextInt(int n):返回一个伪随机数范围在0-n(不包括n)之前的值 //使用random类 完成生成3个10以内的随机整数的操作,如下 public class demo03Random {
public static void main(String[] args) {
//创建键盘录入数据的对象
Random r = new Random();
for (int i = 0; i < 3; i++) {
//随机生成一个数据
int number = r.nextInt(10);
//输出数据
System.out.println("number:"+number); }
//int i = r.nextInt(n);
} } //获取1-n之间的随机数 包含n package cn.lsl.day03.demo01;
import java.util.Random;
public class demo04RandomTest {
public static void main(String[] args) {
int n = 50;
//创建对象
Random r = new Random();
//获取随机数
int number = r.nextInt(n)+1;
//输出随机数
System.out.println("number="+number); } }
//猜数字小游戏

package cn.lsl.day03.demo01;
//导包
import java.util.Random;
import java.util.Scanner; public class Test01Random {
public static void main(String[] args) {
//系统产生一个随机数1-100之间的数
//新建对象
Random r = new Random();
int number = r.nextInt(100)+1;//产生数据
while (true){
//键盘录入我们输入的数据
Scanner sc = new Scanner(System.in);
System.out.println("请输入你要猜的数字(0-100):");
//接收数据
int guessNumber = sc.nextInt();//接收数据
//比较2个数据
if (guessNumber>number){
System.out.println("你猜的数据"+guessNumber+"大了");
}
else if (guessNumber<number){
System.out.println("你猜的数据"+guessNumber+"小了");
}
else {
System.out.println("猜对了");
break;
}
}
}
}

ArrayList 集合

package cn.lsl.day03.demo01;

import java.util.ArrayList;

/*
ArrayList常见方法
public boolean add(E e) :将指定的元素添加到此集合的尾部。
public E remove(int index) :移除此集合中指定位置上的元素。返回被删除的元素。
public E get(int index) :返回此集合中指定位置上的元素。返回获取的元素。
public int size() :返回此集合中的元素数。遍历集合时,可以控制索引范围,防止越界。
*/
public class Demo06ArrayListMethod {
public static void main(String[] args) {
//创建集合对象
ArrayList<String> list = new ArrayList<>(); //添加元素 list.add("hello");
list.add("world");
list.add("java"); //public E get(int index) :返回此集合中指定位置上的元素。返回获取的元素。 System.out.println("get:"+list.get(0));
System.out.println("get:"+list.get(1));
System.out.println("get:"+list.get(2)); //public int size() :返回此集合中的元素数。 System.out.println("size:"+list.size()); //public E remove(int index) :移除此集合中指定位置上的元素。返回被删除的元素。 System.out.println("remove:"+list.remove(0)); //遍历输出
for (int i = 0; i < list.size(); i++) {
System.out.println(list.get(i)); } }
}

ArrayList对象不能存储基本类型,只能存储引用类型的数据。类似 > 不能写,但是存储基本数据类型对应的

包装类型是可以的。所以,想要存储基本类型数据, <> 中的数据类型,必须转换后才能编写,转换写法如下:

我们发现,只有 Integer 和 Character 需要特殊记忆,其他基本类型只是首字母大写即可。那么存储基本类型数

据,代码如下:

package cn.lsl.day03.demo01;

import java.util.ArrayList;

public class Demo07ArrayListMethod {
public static void main(String[] args) {
ArrayList<Integer> list = new ArrayList<>();
list.add(1);
list.add(2);
list.add(3);
list.add(4);
System.out.println(list);
}
}

ArrayList练习

生成6个1~33之间的随机整数,添加到集合,并遍历

package cn.lsl.day03.demo01;

import java.util.ArrayList;
import java.util.Random; public class Test03ArrayList {
public static void main(String[] args) {
//创建Random 对象
Random random = new Random(); //创建ArrayList对象 ArrayList<Integer> list = new ArrayList<>(); //添加随机数到集合
for (int i = 0; i < 6; i++) {
int r = random.nextInt(33)+1;
list.add(r); }
for (int i = 0; i < list.size(); i++) {
System.out.println(list.get(i));
}
}
}

对象添加到集合

自定义4个学生对象,添加到集合,并遍历 代码如下:

package cn.lsl.day03.demo01;

import java.util.ArrayList;

public class Test04ArrayList {
public static void main(String[] args) {
//创建集合对象
ArrayList<Student> list = new ArrayList<>(); //创建学生对象
Student s1 = new Student("赵丽颖",18);
Student s2 = new Student("唐嫣",20);
Student s3 = new Student("景甜",25);
Student s4 = new Student("柳岩",19);
//把学生对象作为元素添加到集合中
list.add(s1);
list.add(s2);
list.add(s3);
list.add(s4);
//遍历集合
for (int x = 0; x < list.size(); x++) {
Student s = list.get(x);
System.out.println(s.getName()+"----"+s.getAge());
} }
}
package cn.lsl.day03.demo01;

import java.util.ArrayList;

/*
定义以指定格式打印集合的方法(ArrayList类型作为参数)
,使用{}扩起集合,使用@分隔每个元素。格式参照 {元素 @元素@元素}。
*/
public class Test05ArrayList {
public static void main(String[] args) {
//创建集合对象
ArrayList<String> list = new ArrayList<>();
//添加字符串到集合中
list.add("张三丰");
list.add("宋远桥");
list.add("张无忌");
list.add("张翠山");
//调用方法
printArrayList(list);
}
public static void printArrayList(ArrayList<String> list){
//拼接左括号
System.out.print("{");
for (int i = 0; i < list.size(); i++) {
//获取元素
String s = list.get(i);
if (i == list.size()-1){
System.out.print(s+"}");
}else{
System.out.print(s+"@");
}
} } }

Java基础——02的更多相关文章

  1. java基础-02数据类型

    基本类型 整数 byte byte 数据类型是8位.有符号的,以二进制补码表示的整数 最小值是 -128(-2^7) 最大值是 127(2^7-1) 默认值是 0 byte 类型用在大型数组中节约空间 ...

  2. Java基础02 方法与数据成员

    作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 在Java基础01 从HelloWorld到面向对象,我们初步了解了对象(obje ...

  3. 二、Java基础--02

    作为本人首篇黑马技术博客有必要交代一下背景.个人理解博客的用作在于于己在于交流,于他在于学习,在交流学习中共同成长.下面进入正题.本文主要是介绍在做黑马入门测试时的一些问题(这个应该不是泄露题库吧). ...

  4. java基础02

    使用 myeclipse写第一个java程序 之后  右键 点击 src  创建 Class /** * package:包的声明! * 代表我们当前的java源文件在项目中的位置! * 必须位于除了 ...

  5. Java 基础02

    参照:https://www.cnblogs.com/ZXF6/p/11530009.html 类和对象 /** * java 中的类和对象 * * 一.局部变量的作用域. * * 二.面向对象的概述 ...

  6. java基础02 数据类型转

    一.回答问题 float f1 = 6.66f; float f2 = (float) 6.67; f1==f2? /** * * @author sun * */ public class Demo ...

  7. Java基础02 方法与数据成员(转载)

    对象中的数据成员表示对象的状态.对象可以执行方法,表示特定的动作. 此外,我们还了解了类(class).同一类的对象属于相同的类型(type).我们可以定义类,并使用该定义来产生对象.   调用同一对 ...

  8. java 基础 02 数据类型、运算符、分支结构

    内容: (1)数据类型 (2)运算符 (3)分支结构 1.数据类型 java语言中的基本数据类型:byte.short.int.long.float.double.boolean.char. 1.1布 ...

  9. java基础-02:编译型和解释型

    Java程序运行机制: Java语言的编译-->解释-->运行过程 1.编译型语言:程序在执行之前需要一个专门的编译过程,把程序编译成为机器语言的文件,运行时不需要重新翻译,直接使用编译的 ...

随机推荐

  1. 6大优势、2种类型,一文吃透动态应用安全测试(DAST)

    在在上篇文章中中,我们了解了 SAST 的概念.优劣和使用的工具,并在文章里提到了另一个软件安全领域里的重要技术 DAST.本文将会详细介绍 DAST 的概念.重要性及其工作原理.   DAST(Dy ...

  2. Markdown常见基本语法

    标题 -方式一:使用警号 几个警号就是几级标题,eg: # 一级标题 -方式二: 使用快捷键 ctrl+数字 几级标题就选其对应的数字, eg: ctrl+2(二级标题) 子标题 -方式一: 使用星号 ...

  3. 六、LVM和从磁盘配额

    一.LVM概述 Logical Volume Manager,逻辑卷管理 优点:能够保证在现有数据不变的情况下,动态调整磁盘容量,从而提高磁盘管理的灵活性 /boot分区用于存放引导文件,不能基于LV ...

  4. 文件上传漏洞靶场分析 UPLOAD_LABS

    文件上传漏洞靶场(作者前言) 文件上传漏洞 产生原理 PASS 1) function checkFile() { var file = document.getElementsByName('upl ...

  5. Linux shell脚本算术运算和逻辑运算

    算术运算 默认不支持算数运算.所以需要特定的语法来完成, shell进行算数运算的工具: let declare (())或$(())或$[] bc let: 格式: let var=算术表达式 例如 ...

  6. Graph-Based Social Relation Reasoning

    title: Graph-Based Social Relation Reasoning, 2020 task: we propose a simpler, faster, and more accu ...

  7. nginx 日志按日期分隔

    #user nobody; user root; worker_processes 1; error_log /spdblogs/nginx/logs/error.log; error_log /sp ...

  8. 千万不要把Request传递到异步线程里面!有坑!

    你好哇,我是歪歪. 前几天在网上冲浪的时候看到一篇技术文章,讲的是他把一个 request 请求传递到了线程池里面,然后遇到了一个匪夷所思的情况. 他写了这篇文章,把自己针对这个问题的探索过程分享了出 ...

  9. Java核心知识体系2:注解机制详解

    1 Java注解基础 注解是JDK1.5版本开始引入的一个特性,用于对程序代码的说明,可以对包.类.接口.字段.方法参数.局部变量等进行注解. 它主要的作用有以下四方面: 生成javadoc文档,通过 ...

  10. Page和list的区别 mybatis

    先看一段代码 点击查看代码 @Override public Result findUserPage(PageParam pageParam) { Page<SysUser> page = ...