package lesson15;

/**

* 1. 使用ArrayList存储整型元素,并对元素进行升序输出

*/

import java.util.ArrayList;

import java.util.Iterator;

import java.util.List;

import java.util.Random;

public class Homework01 {

public void listSort(){

//泛型为整形

List<Integer> list =new ArrayList<Integer>();

//对其中的值随机赋值

Random rd=new Random();

for(int i=0;i<10;i++){

list.add(rd.nextInt(20));

}

//遍历一次输出值

Iterator iterator=list.iterator();

System.out.println("未排序前的数字,第一种方式输出:");

while(iterator.hasNext()){

System.out.print(iterator.next()+" ");

}

System.out.println();

System.out.println("未排序前的数字,第二种方式输出:");

for(int i=0;i<list.size();i++){

System.out.print(list.get(i)+" ");

}

//第一种方式将List接口转化为数组

Integer arr[]=list.toArray(new Integer[list.size()]);

//利用冒泡排序法进行排序

for(int i=list.size();i>0;i--){

for(int j=0;j<i-1;j++){

if(arr[j]>arr[j+1]){

Integer temp=arr[j];

arr[j]=arr[j+1];

arr[j+1]=temp;

}

}

}

System.out.println();

System.out.println("输出排序后的数字:");

//加强for循输出。。

for (Integer intg:arr ){

System.out.print(intg+" ");

}

}

public static void main(String[]args){

Homework01 hw=new Homework01();

hw.listSort();

}

}

package lesson15;

import java.util.ArrayList;

import java.util.Iterator;

/**

* 2. 创建一个类,用于向类中的ArrayList添加元素的同时进行降序排列

class T {

ArrayList alist = new ArrayList();

public void addAndSort(int element) {

//1. 添加元素到alist中

//2. 将alist中的元素降序排列

}

}

* @author LENOVO

*

*/

public class T {

//alist中只能放整形类

ArrayList<Integer> alist=new ArrayList<Integer>();

public void addAndSort(int element){

//向对象alist中添加元素

System.out.println("未排序前输出数字:");

for (int i=0;i<element;i++){

alist.add(i);

}

Iterator iterator=alist.iterator();

while(iterator.hasNext()){

System.out.print(iterator.next()+" ");

}

Integer arr[]=alist.toArray(new Integer[element]);

//冒泡排序法降序输出

for (int i=element;i>0;i--){

for(int j=0;j<i-1;j++){

if (arr[j]<arr[j+1]){

Integer temp=arr[j];

arr[j]=arr[j+1];

arr[j+1]=temp;

}

}

}

System.out.println();

System.out.println("排序后输出数字:");

for (int i=0;i<element;i++){

System.out.print(arr[i]+" ");

}

}

public static void main(String[]args){

T t=new T();

t.addAndSort(10);

}

}

package lesson15;

import java.util.ArrayList;

/**

* 3. 创建平面坐标类(Point,设置两个成员变量x和y,分别表示该点的两个坐标)

创建ArrayList用于保存Point对象,并完成如下功能

(1)将ArrayList中的Point按照x坐标升序输出

(2)将ArrayList中的Point按照y坐标降序输出

(3)将ArrayList中的Point按照与原点的距离大小,升序输出。

* @author LENOVO

*

*/

public class Point {

double  x;

double y;

//构造方法

public Point(double x,double y){

this.x=x;

this.y=y;

}

public double getX() {

return x;

}

public void setX(double x) {

this.x = x;

}

public double getY() {

return y;

}

public void setY(double y) {

this.y = y;

}

public double getDistance(double x,double y){

return Math.sqrt(x*x+y*y);

}

}

class Test{

public static void main(String[]args){

ArrayList<Point> alist=new ArrayList<Point>();

alist.add(new Point(8,3));

alist.add(new Point(4,5));

alist.add(new Point(10,6));

alist.add(new Point(7,8));

//按照x坐标升序排序

for (int i=alist.size();i>0;i--){

for(int j=0;j<i-1;j++){

if(alist.get(j).getX()>alist.get(j+1).getX()){

Point P=alist.get(j);

alist.set(j, alist.get(j+1));

alist.set(j+1, P);

}

}

}

System.out.println("按X升序排序结果:");

for(int i=0;i<alist.size();i++){

System.out.print("x="+alist.get(i).getX()+"y="+alist.get(i).getY());

}

//按照y坐标降序排序

for (int i=alist.size();i>0;i--){

for(int j=0;j<i-1;j++){

if(alist.get(j).getY()<alist.get(j+1).getY()){

Point P=alist.get(j);

alist.set(j, alist.get(j+1));

alist.set(j+1, P);

}

}

}

System.out.println("按y降序排序结果:");

for(int i=0;i<alist.size();i++){

System.out.print("x="+alist.get(i).getX()+"y="+alist.get(i).getY());

}

//按照与原点的距离大小,升续

for(int i=alist.size();i>0;i--){

for(int j=0;j<i-1;j++){

if(alist.get(j).getDistance(alist.get(j).getX(),alist.get(j).getY())>

alist.get(j+1).getDistance(alist.get(j+1).getX(), alist.get(j+1).getY())){

Point P=alist.get(j);

alist.set(j, alist.get(j+1));

alist.set(j+1, P);

}

}

}

System.out.println("按照与原点的距离大小,升续:");

for(int i=0;i<alist.size();i++){

System.out.print("x="+alist.get(i).getX()+"y="+alist.get(i).getY());

}

}

}

package lesson15;

import java.util.ArrayList;

import java.util.Scanner;

/**

* 准备工作:创建一个Computer类

包含成员变量如下:

(1)编号(即计算机的唯一标识)

(2)CPU型号

(3)主板型号

(4)硬盘大小

(5)内存大小

(6)显卡型号

(7)价格

包含方法如下:

(1)输出当前计算机的所有属性

(2)设置计算机CPU型号

(3)设置计算机主板型号

(4)设置计算机硬盘大小

(5)设置计算机内存大小

(6)设置计算机显卡型号

(7)设置计算机价格

(8)获取计算机价格

题目:

(1)要求使用ArrayList存储计算机对象,

形如:ArrayList<Computer> cList = new ArrayList<Computer> ();

(2)为ArrayList对象(例如:上面的cList)添加3个元素。

(3)模拟用户输入(Scanner对象)获取对应的Computer信息,并且输出具体的参数。

(4)遍历输出ArrayList中的Computer,同时输出Computer的详细信息。

* @author LENOVO

*

*/

public class Computer {

int count;

int CPUSize;

int mainboardSize;

double hardboardSize;

double rom;

String graphicsCard;

double prize;

public Computer(int count,int CPUSize,int mainboardSize,double hardboardSize,double rom

,  String graphicsCard,double prize){

this.count=count;

this.CPUSize=CPUSize;

this.mainboardSize= mainboardSize;

this.hardboardSize=hardboardSize;

this.rom=rom;

this.graphicsCard=graphicsCard;

this.prize=prize;

}

public int getCount() {

return count;

}

public void setCount(int count) {

this.count = count;

}

public int getCPUSize() {

return CPUSize;

}

public void setCPUSize(int cPUSize) {

CPUSize = cPUSize;

}

public int getMainboardSize() {

return mainboardSize;

}

public void setMainboardSize(int mainboardSize) {

this.mainboardSize = mainboardSize;

}

public double getHardboardSize() {

return hardboardSize;

}

public void setHardboardSize(double hardboardSize) {

this.hardboardSize = hardboardSize;

}

public double getRom() {

return rom;

}

public void setRom(double rom) {

this.rom = rom;

}

public String getGraphicsCard() {

return graphicsCard;

}

public void setGraphicsCard(String graphicsCard) {

this.graphicsCard = graphicsCard;

}

public double getPrize() {

return prize;

}

public void setPrize(double prize) {

this.prize = prize;

}

public static void main(String[]args){

ArrayList<Computer> alist=new ArrayList<Computer>();

alist.add(new Computer(1,3,5,3.2,99.6,"ab",20.9));

alist.add(new Computer(2,3,5,3.2,99.6,"abc",20.9));

alist.add(new Computer(3,3,5,3.2,99.6,"abcd",20.9));

System.out.println("请输入您想了解的编号:");

Scanner scanner=new Scanner(System.in);

int a=scanner.nextInt();

System.out.println("输出第"+a+"个电脑的信息!!");

System.out.println("编号是:"+alist.get(a).getCount());

System.out.println("CPU型号是:"+alist.get(a).getCPUSize());

System.out.println("主板型号是:"+alist.get(a).getMainboardSize());

System.out.println("硬盘大小是:"+alist.get(a).getHardboardSize());

System.out.println("内存大小是:"+alist.get(a).getRom());

System.out.println("显卡型号是:"+alist.get(a).getGraphicsCard());

System.out.println("价格是:"+alist.get(a).getPrize());

System.out.println("\n\n遍历输出ArrayList中的Computer,同时输出Computer的详细信息");

for(int i=0;i<alist.size();i++){

System.out.println("输出第"+(i+1)+"个电脑的信息!!");

System.out.println("编号是:"+alist.get(a).getCount());

System.out.println("CPU型号是:"+alist.get(a).getCPUSize());

System.out.println("主板型号是:"+alist.get(a).getMainboardSize());

System.out.println("硬盘大小是:"+alist.get(a).getHardboardSize());

System.out.println("内存大小是:"+alist.get(a).getRom());

System.out.println("显卡型号是:"+alist.get(a).getGraphicsCard());

System.out.println("价格是:"+alist.get(a).getPrize());

System.out.println("编号是:"+alist.get(a).getCount());

System.out.println("CPU型号是:"+alist.get(a).getCPUSize());

System.out.println("主板型号是:"+alist.get(a).getMainboardSize());

System.out.println("硬盘大小是:"+alist.get(a).getHardboardSize());

System.out.println("内存大小是:"+alist.get(a).getRom());

System.out.println("显卡型号是:"+alist.get(a).getGraphicsCard());

System.out.println("价格是:"+alist.get(a).getPrize());

}

}

}

java lesson15Homework的更多相关文章

  1. Spark案例分析

    一.需求:计算网页访问量前三名 import org.apache.spark.rdd.RDD import org.apache.spark.{SparkConf, SparkContext} /* ...

  2. 故障重现(内存篇2),JAVA内存不足导致频繁回收和swap引起的性能问题

    背景起因: 记起以前的另一次也是关于内存的调优分享下   有个系统平时运行非常稳定运行(没经历过大并发考验),然而在一次活动后,人数并发一上来后,系统开始卡. 我按经验开始调优,在每个关键步骤的加入如 ...

  3. Elasticsearch之java的基本操作一

    摘要   接触ElasticSearch已经有一段了.在这期间,遇到很多问题,但在最后自己的不断探索下解决了这些问题.看到网上或多或少的都有一些介绍ElasticSearch相关知识的文档,但个人觉得 ...

  4. 论:开发者信仰之“天下IT是一家“(Java .NET篇)

    比尔盖茨公认的IT界领军人物,打造了辉煌一时的PC时代. 2008年,史蒂夫鲍尔默接替了盖茨的工作,成为微软公司的总裁. 2013年他与微软做了最后的道别. 2013年以后,我才真正看到了微软的变化. ...

  5. 故障重现, JAVA进程内存不够时突然挂掉模拟

    背景,服务器上的一个JAVA服务进程突然挂掉,查看产生了崩溃日志,如下: # Set larger code cache with -XX:ReservedCodeCacheSize= # This ...

  6. 死磕内存篇 --- JAVA进程和linux内存间的大小关系

    运行个JAVA 用sleep去hold住 package org.hjb.test; public class TestOnly { public static void main(String[] ...

  7. 【小程序分享篇 一 】开发了个JAVA小程序, 用于清除内存卡或者U盘里的垃圾文件非常有用

    有一种场景, 手机内存卡空间被用光了,但又不知道哪个文件占用了太大,一个个文件夹去找又太麻烦,所以我开发了个小程序把手机所有文件(包括路径下所有层次子文件夹下的文件)进行一个排序,这样你就可以找出哪个 ...

  8. Java多线程基础学习(二)

    9. 线程安全/共享变量——同步 当多个线程用到同一个变量时,在修改值时存在同时修改的可能性,而此时该变量只能被赋值一次.这就会导致出现“线程安全”问题,这个被多个线程共用的变量称之为“共享变量”. ...

  9. Java多线程基础学习(一)

    1. 创建线程    1.1 通过构造函数:public Thread(Runnable target, String name){}  或:public Thread(Runnable target ...

随机推荐

  1. OUC_Summer Training_ DIV2_#12(DP1) 723

    这一次是做练习,主要了解了两个算法,最大子矩阵和,最长上升子序列. 先看题好啦. A - To The Max Time Limit:1000MS     Memory Limit:32768KB   ...

  2. 常用css模板

    段落超出显示省略号(可单行多行) .p-content{ overflow:hidden; text-overflow:ellipsis; display:-webkit-box; -webkit-b ...

  3. ubuntu18.04安装mysql以及重置密码创建新用户

    1.安装mysqlsudo apt-get install mysql-serversudo apt-get install mysql-clientsudo apt-get install libm ...

  4. Django知识

    复习下django的知识. 1,安装: #pip install django 2.安装完毕后,在当前目录创建工程: #django-admin startproject mysite 执行上方的命令 ...

  5. python——装饰器(不定长参数,闭包,装饰器)示例

    def func(functionName): print("正在装饰") def func_in(*args, **kargs): print("------func_ ...

  6. centos 下启动 rabbitmq 报错的解决

    安装 rabbitmq 后进行了一些配置,然后启动服务: service rabbitmq-server start 无法启动.通过 journalctl -xe 查看日志后,有如下日志: ... - ...

  7. nginx详解(代理服务器的解释+nginx 在linux 下的安装+nginx.conf 中的配置解释)

    一.概论 1.什么是代理服务器 代理服务器,客户机在发送请求时,不会直接发送给目的主机,而是先发送给代理服务器,代理服务接受客户机请求之后,再向主机发出,并接收目的主机返回的数据,存放在代理服务器的硬 ...

  8. [CDH] Redis: Remote Dictionary Server

    基本概念 一.安装 Redis: Remote Dictionary Server 远程字典服务 使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库,并提供多种 ...

  9. 一个简单的C共享库的创建及Python调用此库的方法

    /********************************************************************* * Author  : Samson * Date    ...

  10. [转]html里a标签中href调用js的几种方法

    文章转自:https://blog.csdn.net/best_luxi/article/details/45062301 我们常用的在a标签中有点击事件: 1. a href=”javascript ...