آموزش های این وب سایت به صورت رایگان در دسترس است. اطلاعات بیشتر
بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]

چگونه آرایه ای داشته باشیم که Data Type های مختلف رو در خود جای دهد

rad  9 سال پیش  9 سال پیش
0 0

چگونه آرایه ای داشته باشیم که Data Type های مختلف رو در خود جای دهد

برای مثال خوندن مشخصات دستگاه توی لوگ میشه نمایش داد ولی برای کاربر چطور نمایش داده بشه

     public static String[] readImei() {
TelephonyManager telephonyManager = (TelephonyManager) G.context.getSystemService(Context.TELEPHONY_SERVICE);
String imei = telephonyManager.getDeviceId();
String deviceSoftwareVersion = telephonyManager.getDeviceSoftwareVersion();
String simOperator = telephonyManager.getSimOperator();
String simOperatorName = telephonyManager.getSimOperatorName();
String voiceMailNumber = telephonyManager.getVoiceMailNumber();
String Line1Number= telephonyManager.getLine1Number();
String networkcountryIso= telephonyManager.getNetworkCountryIso();
String networkoperator= telephonyManager.getNetworkOperator();
String networkoperatorName= telephonyManager.getNetworkOperatorName();
String simSerialNumber= telephonyManager.getSimSerialNumber();
String subscriberId= telephonyManager.getSubscriberId();

List<NeighboringCellInfo> NeighboringCellInfo= telephonyManager.getNeighboringCellInfo();

CellLocation CellLocation= telephonyManager.getCellLocation();

int networkType= telephonyManager.getNetworkType();
int phoneType= telephonyManager.getPhoneType();
int DataActivity= telephonyManager.getDataActivity();
int CallState= telephonyManager.getCallState();
int simState= telephonyManager.getSimState();

boolean hasIccCard= telephonyManager.hasIccCard();
boolean isNetworkRoaming = telephonyManager.isNetworkRoaming();

String[] stringslist = new String[]{
imei,
deviceSoftwareVersion,
simOperator,
simOperatorName,
voiceMailNumber,
Line1Number,
networkcountryIso,
networkoperator,
networkoperatorName,
simSerialNumber,
subscriberId
};

Log.i("LOG", "IMEI : " + imei);
Log.i("LOG", "Device Software Version : " + deviceSoftwareVersion);
Log.i("LOG", "Simcard Operator : " + simOperator);
Log.i("LOG", "Simcard Operator Name : " + simOperatorName);
Log.i("LOG", "Voice Mail Number : " + voiceMailNumber);
Log.i("LOG", "deviceSoftwareVersion : "+deviceSoftwareVersion);
Log.i("LOG", "simOperator : "+simOperator);
Log.i("LOG", "simOperatorName : "+simOperatorName);
Log.i("LOG", "voiceMailNumber : "+voiceMailNumber);
Log.i("LOG", "Line1Number : "+Line1Number);
Log.i("LOG", "networkcountryIso : "+networkcountryIso);
Log.i("LOG", "networkoperator : "+networkoperator);
Log.i("LOG", "networkoperatorName : "+networkoperatorName);
Log.i("LOG", "simSerialNumber : "+simSerialNumber);
Log.i("LOG", "subscriberId : "+subscriberId);
Log.i("LOG", "CallState : "+CallState);
Log.i("LOG", "CellLocation : "+CellLocation);
Log.i("LOG", "DataActivity : "+DataActivity);
Log.i("LOG", "Line1Number : "+Line1Number);
Log.i("LOG", "NeighboringCellInfo : "+NeighboringCellInfo);
Log.i("LOG", "networkType : "+networkType);
Log.i("LOG", "phoneType : "+phoneType);
Log.i("LOG", "simState : "+simState);
Log.i("LOG", "hasIccCard : "+hasIccCard);
Log.i("LOG", "isNetworkRoaming : "+isNetworkRoaming);


return stringslist;
}

+1 0
منظورتون رو متوجه نشدم ، شما میخواید یک آرایه داشته باشید که متغیر های مختلف String + int + boolean + float و غیره رو در خودش نگه داره ؟ ولی مثالی که زدید در مورد مشخصات دستگاه همشون بصورت String هستند ! (9 سال پیش)
0 0
آره خب درست متوجه شدید منم میخوام یک آرایه داشته باشم که متغیر های مختلف String + int + boolean + float و غیره رو در خودش نگه داره . من با اینتر نوع متغیر ها رو دسته بندی کردم .همون طور که گفتید من فقط میتونم از این متد فقط String ها رو Return کنم و برای کاربر نمایش بدم و . درصورتی که توی لوگ همه رو میشه لوگ کرد. (9 سال پیش)
 برای این سوال 1 پاسخ وجود دارد.
پاسخ به سوال 
RODER  9 سال پیش
+1 0

خب ساده ترین راه اینه که ما خودمون یک نوع داده ی جدید بسازیم .

مثلا یک کلاس جدید بسازیم که شامل فیلد هایی از نوع عددی و فیلد هایی از نوع رشته باشه و بعد بیایم یک آرایه از همون نوع ایجاد کنیم .

مثال:

خب بعدش میتونیم نمونه هایی از این نوع (کلاس )بسازیم و استفاده کنیم .

public class Student {
public int age;
public float average;
public String fullName;


public Student(int a , float ave , String name){
age = a;
average = ave ;
fullName = name;


}

}
ArrayList<Student> students =newArrayList<Student>();for(int i =0; i <100; i++){
Student student = new Student(i,i/2,'name'+i);
students .add(student);
}
0 0
ای ول خودشه (9 سال پیش)

پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .