gpt4 book ai didi

java - 如何优化android代码

转载 作者:行者123 更新时间:2023-11-30 11:43:53 25 4
gpt4 key购买 nike

public String getBrotherHood() throws Exception{        
client = new DefaultHttpClient();
get = new HttpGet(uri);
res = client.execute(get);
sl = res.getStatusLine();
sCode = sl.getStatusCode();
if(sCode==200)
{
try{
reader = new BufferedReader(new InputStreamReader(res.getEntity().getContent()));
readBuffer = new StringBuffer();
while((nl = reader.readLine())!=null){
readBuffer.append(nl);
}
reader.close();
}finally{
if(reader !=null)
{
try{
reader.close();
}catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
}
}
}
return readBuffer.toString();
}
}

我有这段代码,这是编写它的正确方法吗,还是我需要遵循任何编码模式或标准??

请给我一些建议,因为我不是 Android 编码。

更新:

public class JSONData {

public ArrayList<String> getBrotherHoodJSON() throws JSONException,IOException,Exception{
ArrayList<String> item = new ArrayList<String>();
JSONArray jA = new JSONArray(getBrotherHood());

for(int i=0; i<jA.length(); i++)
{
JSONObject jO = jA.getJSONObject(i);
String n = jO.getString("name");
item.add(n);
Log.i("JsonData:",jO.getString("name"));
}

return item;
}

public String getBrotherHood() throws Exception{
BufferedReader in = null;
String data= null;
HttpClient client = new DefaultHttpClient();
URI uri = new URI("http://fahidmohammad.in/demo/Android/api.php?user=fah");
HttpGet get = new HttpGet();
get.setURI(uri);
HttpResponse res = client.execute(get);
StatusLine sl = res.getStatusLine();
int sCode = sl.getStatusCode();
if(sCode==200)
{
try{
in = new BufferedReader(new InputStreamReader(res.getEntity().getContent()));
StringBuffer sb = new StringBuffer();
String nl;
while((nl = in.readLine())!=null){
sb.append(nl);
}
in.close();
data = sb.toString();
Log.i("Raw Data:",data);
return data;
}finally{
if(in !=null)
{
try{
in.close();
return data;
}catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
}
}
}
return data;
}

这是相同代码的更新版本。处理了所有提到的问题。

而且它的工作就像一个魅力,但不知道它的稳定性。

最佳答案

你显然已经在你的方法之外声明了所有变量,即使它们似乎只在这个方法中使用。这是没有意义的。它可以防止多个对象被垃圾收集。您最好将声明移到方法中。

throws Exception 声明也没有多大意义。如果您声明一个可能发生的特定异常,或者将所有不太可能发生的异常转换为 RuntimeException,这样您就不需要声明它们,这样会更好。

关于java - 如何优化android代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11062677/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com