Java基础——02
今日学习
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的更多相关文章
- java基础-02数据类型
基本类型 整数 byte byte 数据类型是8位.有符号的,以二进制补码表示的整数 最小值是 -128(-2^7) 最大值是 127(2^7-1) 默认值是 0 byte 类型用在大型数组中节约空间 ...
- Java基础02 方法与数据成员
作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 在Java基础01 从HelloWorld到面向对象,我们初步了解了对象(obje ...
- 二、Java基础--02
作为本人首篇黑马技术博客有必要交代一下背景.个人理解博客的用作在于于己在于交流,于他在于学习,在交流学习中共同成长.下面进入正题.本文主要是介绍在做黑马入门测试时的一些问题(这个应该不是泄露题库吧). ...
- java基础02
使用 myeclipse写第一个java程序 之后 右键 点击 src 创建 Class /** * package:包的声明! * 代表我们当前的java源文件在项目中的位置! * 必须位于除了 ...
- Java 基础02
参照:https://www.cnblogs.com/ZXF6/p/11530009.html 类和对象 /** * java 中的类和对象 * * 一.局部变量的作用域. * * 二.面向对象的概述 ...
- java基础02 数据类型转
一.回答问题 float f1 = 6.66f; float f2 = (float) 6.67; f1==f2? /** * * @author sun * */ public class Demo ...
- Java基础02 方法与数据成员(转载)
对象中的数据成员表示对象的状态.对象可以执行方法,表示特定的动作. 此外,我们还了解了类(class).同一类的对象属于相同的类型(type).我们可以定义类,并使用该定义来产生对象. 调用同一对 ...
- java 基础 02 数据类型、运算符、分支结构
内容: (1)数据类型 (2)运算符 (3)分支结构 1.数据类型 java语言中的基本数据类型:byte.short.int.long.float.double.boolean.char. 1.1布 ...
- java基础-02:编译型和解释型
Java程序运行机制: Java语言的编译-->解释-->运行过程 1.编译型语言:程序在执行之前需要一个专门的编译过程,把程序编译成为机器语言的文件,运行时不需要重新翻译,直接使用编译的 ...
随机推荐
- 《原CSharp》第二回 巧习得元素分类 子不知怀璧其罪
第二回 巧习得元素分类 子不知怀璧其罪 ===================================================================== 云溪父亲见状看了看云 ...
- SAP Web Dynpro-监视应用程序
您可以使用ABAP监视器来监视Web Dynpro应用程序. 存储有关Web Dynpro应用程序的信息. 您可以使用T代码-RZ20查看此信息. 您可以在Web Dynpro ABAP监视器中查看以 ...
- openssl客户端编程:一个不起眼的函数导致的SSL会话失败问题
我们目前大部分使用的openssl库还是基于TLS1.2协议的1.0.2版本系列,如果要支持更高的TLS1.3协议,就必须使用openssl的1.1.1版本或3.0版本.升级openssl库有可能会导 ...
- 不要使用短路逻辑编写 stl sorter 多条件比较
前言 最近工期紧.任务多,没有时间更新博客,就水一期吧.虽然是水,也不能太水,刚好最近工作中遇到一个 sorter 多条件排序的问题,花费了半天时间来定位解决,就说说它吧. 背景 公司产品是一个跨端的 ...
- 漫谈客户端存储技术之Cookie篇
Cookie 说到Cookie,不管作为前端开发人员还是后端开发人员并不陌生,作为一种最古老.最稳定的客户端存储形式,即便是在当下各种新的客户端存储技术层出不穷的时代,它仍旧有其一席之位.Cookie ...
- 关于cpu体系架构的一些有趣的故事分享
从排查一次匪夷所思的coredump,引出各种体系架构的差异. 本文中的所有内容来自学习DCC888的学习笔记或者自己理解的整理,如需转载请注明出处.周荣华@燧原科技 1 背景 从全世界有记载的第一台 ...
- 牛客SQL刷题第三趴——SQL大厂面试真题
01 某音短视频 SQL156 各个视频的平均完播率 [描述]用户-视频互动表tb_user_video_log.(uid-用户ID, video_id-视频ID, start_time-开始观看时间 ...
- AOV网的实现(数据结构)
#include <stdio.h> #include <stdlib.h> #include <string.h>//我这里的头以及尾巴与书上的不一样. int ...
- else语句
else的搭配 与else语句配合使用有三种情况 if ...: else: if条件表达式不成立的时候执行else 注意else还可以与while循环和for循环组合在一起(这是一个全新的知识) 注 ...
- ASP.NET Web 应用 Docker踩坑历程——续
ASP.NET Web 应用 Docker踩坑历程发表后,也开始使用Docker了,然而发布的过程比较痛苦,经常发生下图的事情: 据说是nuget包还原时发生错误 百度了半天也找不到解决的方法,而发生 ...