import java.util.Random;
public class ArrayToObject {
public static void main(String[] args) {
/*
* Arrays方法都是 针对一维数组
*/
Person[] p = new Person[25];
// 数组模拟对象
// 二维数组就可以了
// column代表对象有几个属性
// 建立了25个对象
// 不好的地方是修改属性age,不能直接反映salary变化
// 默认约定[][0]:Id [][1]:name [][2]:age [][3]salary
// Array[row][column]!!!
String[][] PersonArray = new String[5][4];
for (int i = 0; i < PersonArray.length; i++) {
PersonArray[i][0] = "123456" + i;
PersonArray[i][1] = "Dolphin";
PersonArray[i][2] = "25";
PersonArray[i][3] = String.valueOf((Integer
.parseInt(PersonArray[i][0]) * Integer
.parseInt(PersonArray[i][2]))
+ i * 200);
}
for (int i = 0; i < PersonArray.length; i++) {
log(PersonArray[i][0]);
log(PersonArray[i][1]);
log(PersonArray[i][2]);
log(PersonArray[i][3]);
System.out.println();
}
System.out.println(PersonArray.length+" length");
/*
* 按照Salary排序,从大到小
*/
for(int i=1;i<PersonArray.length;i++){
int min =0;
for (int j=1;j<=PersonArray.length-i;j++){
if (Integer.parseInt(PersonArray[j][3])<Integer.parseInt(PersonArray[min][3])){
min =j;
}
}
String[] temp = PersonArray[min];
PersonArray[min] = PersonArray[PersonArray.length-i] ;
PersonArray[PersonArray.length-i]= temp;
}
for (int i = 0; i < PersonArray.length; i++) {
log(PersonArray[i][0]);
log(PersonArray[i][1]);
log(PersonArray[i][2]);
log(PersonArray[i][3]);
System.out.println();
}
/*
* 比较排序
*/
Random random = new Random();
int[] data = new int[10];
for (int i = 0; i < 10; i++) {
data[i] = random.nextInt(100) - random.nextInt(100);//生成两个随机数相减,保证生成的数中有负数
}
System.out.println("==========原始序列==========");
for(int i:data){
System.out.print(i+" ");
}
/*
* 从小到大排列
*/
int index;
for (int i = 1; i < data.length; i++) {
/*
* data[index]是当前最大的值,每次循环假设data[0]是最大值
*/
index = 0;
for (int j = 1; j <= data.length - i; j++) {
if (data[j] > data[index]) {
index = j;
}
}
//交换在位置data.length-i和index(最大值)两个数
int temp = data[index];
data[index] = data[data.length - i];
data[data.length - i] = temp;
}//end for
System.out.println();
for(int i:data){
System.out.print(i+" ");
}
}
public static void log(Object o) {
System.out.print(o.toString() + " ");
}
}
class Person {
String Id = "123456";
String name = "Dolphin";
int age = 25;
int salary = this.calSaraly();
private int calSaraly() {
this.salary = this.age * Integer.parseInt(Id);
return this.salary;
}
public void setAge(int age) {
this.age = age;
this.calSaraly();
}
}
- 大小: 7.5 KB
分享到:
相关推荐
前端开源库-object-to-array对象到数组,将对象转换为数组,其中每个项都是键和值的数组
小实例-实现对成绩总分由高到低的排序-Java中数组对象的排序
主要介绍了JavaScript中利用Array和Object实现Map的方法,实例分析了javascript实现map的添加、获取、移除、清空、遍历等操作技巧,具有一定参考借鉴价值,需要的朋友可以参考下
application antenna array to mobile comm
number 数字string 字符串bool 布尔undefined 未定义null 空Array 数组Object 对象var.md
composer require vgleb/object-arrayLaravel 5实现LaravelObjectArrayServiceProvider的引用添加到config/app.php的providers数组中: 'providers' => [ 'VGleb\ObjectArray\LaravelObjectArrayServiceProvider',...
要求:不提供单独的升序和降序排序方法(不分别定义一个升序和一个降序方法),而只提供一个排序方法SortArray(),它接受一个委托类型的参数compare,该参数会引用要使用的比较方法。为执行降序排序,向排序方法...
数组排序,用C 实现-Sorting an array using C to achieve
锦标赛排序(树选择排序)TournamentSort(int *array, int length) 或 TreeSelectionSort(int *array, int length) 3.堆排序 HeapSort(int *array, int length) 交换排序(ExchangeSort.h) 1.冒泡排序 ...
Props with type Object/Array must use a factory function to return the default value. 1、在vue中如果当在父组件通过props传Array/Object类型值给子组件的时候 2、如果子组件的props接收default为 ,如下 ...
按所推荐的程序在IE下跑了下,的确,排序耗时很小。 代码如下: [removed] /* * 洗牌 */ function getRandomPlayCard(m){ var array1=new Array(m); for(var i=0;i<m;i++){ var rnd=Math.floor(Math.random()*(i+0...
答案: 1、如果你只是用typeof来检查该变量,不论是array还是object,都将返回‘objec’。 此问题的一个可行的答案是是检查该变量是不是object,并且检查该变量是否有数字长度(当为空array时长度也可能为0)。 ...
数组下标从0开始的排序,其中包含了各种对数组排序的方法,有插入排序(直接插入排序、希尔排序),交换排序(起泡排序、快速排序),选择排序(简单选择排序,堆排序)、归并排序(递归,非递归)。
多种数组排序算法类 CMySort_Array.h
Merge Sorted Array 合并 排序 数组 leetcode
数组sort排序 sort比较次数,sort用法,sort常用 描述 方法sort()将在原数组上对数组元素进行排序,即排序时不创建新的数组副本。如果调用方法sort()时没有使用参数,将按字母顺序(更为精确地说,是按照字符编码的...
希望能按照age从小到大进行排序。笔者整理了两个方法出来,分享给大家。 1、使用array_multisort 使用这个方法,会比较麻烦些,要将age提取出来存储到一维数组里,然后按照age升序排列。具体代码如下: 复制代码 ...
Json格式的字符串转成List、Array、Map、Object、List<Object>等,就是各种字符串转其他格式的方法.有个封装好的转换方法和一个我自己做的示例
JavaScript中的Array对象有自己的排序方法sort(),对数组中的数据项进行排序,但是有时候排序结果不尽如人意,比如 var arr = [12, 1, 2, 21, 3]; arr.sort(); alert(arr); 得到的结果为 1,12,2,21,3 这是...