⑴ 在java中,定義一個list,向裡面添加幾個數字,怎樣實現選擇性的輸出,比如,輸出其最大值,或者最小值。
private double x; //私有變數 雙精度型 的 x
private double y; //私有變數 雙精度型 的 y
Point(double x1, double y1) { //點類的帶兩個參數的構造方法,
x = x1; //把參數x1的值賦給x
y = y1; //把常識y1的值賦給y
}
public double getX()
public double getY()
public void setX(double i)
public void setY(double i)
}
class Circle { //圓類
private Point o;
private double radius;
Circle(Point p, double r) {
o = p;
radius = r;
}
Circle(double r) {
o = new Point(0.0, 0.0);
radius = r;
}
boolean contains(Point p) {
double x = p.getX() - o.getX();
double y = p.getY() - o.getY();
if(x*x + y*y > radius * radius) return false;
else return true;
}
public void setO(double x, double y) {
o.setX(x);
o.setY(y);
}
public Point getO()
public double getRadius()
public void setRadius(double r)
public double area() {
return 3.14 * radius * radius;
}
}
public class TestCircle { //主類
public static void main(String args[]) {
Circle c1 = new Circle(new Point(1.0,2.0), 2.0);
Circle c2 = new Circle(5.0);
System.out.println("c1:("+c1.getO().getX()+"," +c1.getO().getY()+"),"+c1.getRadius());
System.out.println("c2:("+c2.getO().getX()+","+c2.getO().getY()+"),"+c2.getRadius());
System.out.println("c1 area = "+c1.area());
System.out.println("c1 area = "+c2.area());
c1.setO(5,6);
c2.setRadius(9.0);
System.out.println("c1:("+c1.getO().getX()+","+c1.getO().getY()+"),"+c1.getRadius());
System.out.println("c2:("+c2.getO().getX()+","+c2.getO().getY()+"),"+c2.getRadius());
System.out.println("c1 area = "+c1.area());
System.out.println("c1 area = "+c2.area());
Point p1 = new Point(5.2, 6.3);
System.out.println(c1.contains(p1));
System.out.println(c1.contains(new Point(10.0,9.0)));
}
}
現成的,不過沒給你改。自己按自己要求改下。
⑵ java中list最多可以存儲多少條數據40萬可以嗎
和jdk配置的內存大小有關系,和list里存的數據結構有關系。
從語言上來看,java.util.List是個介面,其下有N多實現,最常用的是ArrayList和LinkedList及其各種繼承或同步化實現(如Vector/Queue/Stack這些的)
ArrayList內部是拿數組存儲,那麼上限就是Integer.MAX_VALUE
LinkedList內部是個鏈表,理論上是無限的
另外,List里放的東西都是在內存里的(當然你也可以自己實現一個放磁碟上的),因此能放多少也取決於你放的東西的大小以及種類。
大小方面很容易計算,一個對象如果1K,那400,000個就至少要佔用400M的內存(不算其他佔用)。
而虛擬機內存分類方面,如果是普通對象,一般佔用的都是堆(Heap)空間,如果是常量或是類似String.intern()出來的東東,則佔用的是永生帶(Permanent Generation)。
實際開發中,虛擬機默認內存大小根據不同的虛擬機實現有所不同,可以在啟動應用時用-Xmx調整最大堆大小,比如調整堆最大大小為2G:
java -Xmx2048m cn.gefostudio.App
調整永生帶最大大小為1G:
java -XX:MaxPermSize=1024m cn.gefostudio.App
⑶ java list 最大能存多少數據
List的size()返回類型是int,決定了它最大存儲數據是2的32次方
當然,這是理論大小,實際上要根據存儲的對象佔用空間大小來定
⑷ java中如何取得一組數字的最大值
以下是Java中的List,如果是數組,大同小異
packagecom;
importjava.util.ArrayList;
importjava.util.List;
publicclassTest{
publicstaticvoidmain(String[]args){
//初始化數組
List<Integer>nums=newArrayList<Integer>();
nums.add(2);
nums.add(5);
nums.add(10);
nums.add(6);
nums.add(3);
//設置最大值Max
intMax=Collections.max(nums);
System.out.println("Max="+Max);
}
}
⑸ java如何選取list中最大值
Collections.max(list);
⑹ JAVA四種整數數據類型的取值范圍分別是多少
byte的取值范圍為-128~127,佔用1個位元組(-2的7次方到2的7次方-1)
short的取值范圍為-32768~32767,佔用2個位元組(-2的15次方到2的15次方-1)
int的取值范圍為(-2147483648~2147483647),佔用4個位元組(-2的31次方到2的31次方-1)
long的取值范圍為(-9223372036854774808~9223372036854774807),佔用8個位元組(-2的63次方到2的63次方-1)
List特點和常用方法
List是有序、可重復的容器。
有序指的是:List中每個元素都有索引標記。可以根據元素的索引標記(在List中的位置)訪問元素,從而精確控制這些元素。
可重復指的是:List允許加入重復的元素。更確切地講,List通常允許滿足e1.equals(e2)的元素重復加入容器;
除了Collection介面中的方法,List多了一些跟順序(索引)有關的方法:
void add (int index, Object element)
在指定位置插入元素,以前元素通通後移一位
Object set (int index,Object element)
修改指定位置的元素
Object get (int index)
返回指定位置的元素
Object remove (int index)
刪除指定位置的元素,後面元素通通前移一位
int indexOf (Object o)
返回第一個匹配元素的索引。如果沒有該元素,返回-1
int lastIndexOf (Object o)
返回最後一個匹配元素的索引。如果沒有該元素,返回-1
List介面常用的實現類有3個:ArrayList、LinkedList、Vector。
【示例1】List常用方法
看完之後自己寫一遍試試,對你學習會很有幫助的