Java 如何向方法添加代码
您好,我只是想问一下,我应该如何将codes函数转换成一个由main当前运行的方法!基本上,这样我就可以从主界面激活工作方法了。我是编程新手,所以我很难正确把握每一件事Java 如何向方法添加代码,java,arrays,json,api,parsing,Java,Arrays,Json,Api,Parsing,您好,我只是想问一下,我应该如何将codes函数转换成一个由main当前运行的方法!基本上,这样我就可以从主界面激活工作方法了。我是编程新手,所以我很难正确把握每一件事 package bla_bla; import java.io.IOException; import java.util.ArrayList; import java.util.*; import javax.swing.text.html.parser.Element;
package bla_bla;
import java.io.IOException;
import java.util.ArrayList;
import java.util.*;
import javax.swing.text.html.parser.Element;
import org.codehaus.jackson.map.ObjectMapper;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.select.Elements;
import org.jsoup.select.Evaluator.Id;
import org.json.*;
import argo.saj.InvalidSyntaxException;
public class supermonkey {
private static ArrayList<BugsList> bugsList;
private static ArrayList<BugsList> bugbug;
public static void main(String args[]) throws IOException {
bugsList = new ArrayList<BugsList>();
bugbug = new ArrayList<BugsList>();
Document doc = Jsoup.connect("https://bugzilla.mozilla.org/rest/bug?product=Input&f1=bug_mentor&o1=isnotempty").get();
String rawData = doc.body().text();
// System.out.println(title);
JSONObject obj = new JSONObject(rawData);
// System.out.println(obj);
System.out.println(obj.get("bugs"));
JSONArray jsonMainArr = new JSONArray(obj.get("bugs").toString());
for (int i = 0; i < jsonMainArr.length(); i++) { // **line 2**
JSONObject childJSONObject = jsonMainArr.getJSONObject(i);
JSONObject assigned = childJSONObject.getJSONObject("assigned_to_detail");
// JSONObject assigned2 = childJSONObject.getJSONObject("assigned_to_detail");
int id = assigned.getInt("id");
BugsList bug = new BugsList();
BugsList bug2 = new BugsList();
bug.setId(id);
String severity = childJSONObject.getString("severity");
String resolution = childJSONObject.getString("resolution");
String summary = childJSONObject.getString("summary");
String component = childJSONObject.getString("component");
bug.setSeverity(severity);
bug.setResolution(resolution);
bug.setSummary(summary);
bug.setComponent(component);
bugsList.add(bug);
// String severity = assigned.getString();
// System.out.println("sss "+ assigned);
}
getComponent("Code Quality");
// getSeverity(524276);
// getResolution(524276);
// getSummary(524276);
}
public static void getSeverity(int id){
for(int i =0;i<bugsList.size(); i++){
if(bugsList.get(i).getId() == id){
System.out.println("The id exists in the list " + bugsList.get(i).getSeverity());
}
}
}
public static void getResolution(int id){
for(int i =0;i<bugsList.size(); i++){
if(bugsList.get(i).getId() == id){
System.out.println("The id exists in the list and The resolution is" + bugsList.get(i).getResolution());
}
}
}
public static void getSummary(int id){
for(int i =0;i<bugsList.size(); i++){
if(bugsList.get(i).getId() == id){
System.out.println("The comp.. exists in the list and The summary is " + bugsList.get(i).getSummary());
}
}
}
// Current used method
public static ArrayList<BugsList> getComponent(String component){
for(int i =0;i<bugsList.size(); i++){
if(bugsList.get(i).getComponent().equals(component)){
System.out.println("(Code Quality) component contains summary " + bugsList.get(i).getSummary() +" /The resolution is " +
bugsList.get(i).getResolution() + " /Severity is " + bugsList.get(i).getSeverity());
bugbug.add(bugsList.get(i));
}
}
return bugbug;
}
}
package bla_bla;
public class BugsList {
private String severity;
private int id;
private String resolution;
private String summary;
private String component;
public String getComponent() {
return component;
}
public void setComponent(String component) {
this.component = component;
}
public String getSummary() {
return summary;
}
public void setSummary(String summary) {
this.summary = summary;
}
public String getResolution() {
return resolution;
}
public void setResolution(String resolution) {
this.resolution = resolution;
}
public String getSeverity() {
return severity;
}
public void setSeverity(String severity) {
this.severity = severity;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
}
package bla_bla;
导入java.io.IOException;
导入java.util.ArrayList;
导入java.util.*;
导入javax.swing.text.html.parser.Element;
导入org.codehaus.jackson.map.ObjectMapper;
导入org.jsoup.jsoup;
导入org.jsoup.nodes.Document;
导入org.jsoup.select.Elements;
导入org.jsoup.select.Evaluator.Id;
导入org.json.*;
导入argo.saj.InvalidSyntaxException;
公共类超单键{
私有静态ArrayList bugsList;
私有静态数组列表bug;
公共静态void main(字符串args[])引发IOException{
bugsList=newarraylist();
bugbug=newarraylist();
Document doc=Jsoup.connect(“https://bugzilla.mozilla.org/rest/bug?product=Input&f1=bug_mentor&o1=isnotempty).get();
字符串rawData=doc.body().text();
//系统输出打印项次(标题);
JSONObject obj=新的JSONObject(原始数据);
//系统输出打印项次(obj);
System.out.println(对象获取(“bug”);
JSONArray jsonMainArr=新的JSONArray(obj.get(“bug”).toString());
对于(inti=0;i 对于(inti=0;i我想我理解您的问题。您将代码写入主函数,而不是解决方案。
您的主要功能应该如下所示:
public static void main(String args[]) throws IOException {
Supermonkey supermonkey = new Supermonkey();
supermonkey.getComponent("componennt name ");
}
您的类是Supermonkey,您创建了一个名为Supermonkey的实例(有时人们使用mySupermonkey)。该类只有一个实例将使用
然后,在构造函数方法中,您可以创建所有内容来构建实例supermonkey,如下所示:
public class Supermonkey {
private ArrayList<BugsList> bugsList;
private ArrayList<BugsList> bugbug;
public Supermonkey(){
bugsList = new ArrayList<BugsList>();
bugbug = new ArrayList<BugsList>();
Document doc = Jsoup
.connect(
"https://bugzilla.mozilla.org/rest/bug?product=Input&f1=bug_mentor&o1=isnotempty")
.get();
String rawData = doc.body().text(); // ... partial code add everything about initialisation of your instance
公共类超级单键{
私人ArrayList bugsList;
私人ArrayList bugbug;
公共超级密钥(){
bugsList=newarraylist();
bugbug=newarraylist();
文档doc=Jsoup
.连接(
"https://bugzilla.mozilla.org/rest/bug?product=Input&f1=bug_mentor&o1=isnotempty")
.get();
String rawData=doc.body().text();/…部分代码添加了有关实例初始化的所有内容
然后你可以有一个类Supermonkey的方法
// Current used method
public ArrayList<BugsList> getComponent(String component) {
for (int i = 0; i < bugsList.size(); i++) {
if (bugsList.get(i).getComponent().equals(component)) {
System.out
.println("(Code Quality) component contains summary "
+ bugsList.get(i).getSummary()
+ " /The resolution is "
+ bugsList.get(i).getResolution()
+ " /Severity is "
+ bugsList.get(i).getSeverity());
bugbug.add(bugsList.get(i));
}
}
return bugbug;
}
//当前使用的方法
公共ArrayList getComponent(字符串组件){
对于(int i=0;i
A此方法是通过supermonkey.getComponent(“组件名称”);
此外,我还考虑更改类的名称BugsList
它似乎是一个BugItem
,可能是?有什么问题/问题?很难理解您试图在代码中做什么。您能不能只缩减到问题区域?下面是我得到的结果。现在,如果您访问我正在使用的api网站,我将n我的代码拖下数据。您将看到每个不同的组件(代码质量、常规等)。提供了各种类型的摘要、严重性和解决方案。您在下面看到的结果是指定组件的所有搜索结果。最后,我希望用户可以将每个错误信息编号为一个数组,而不是所有错误信息都杂乱无章。(代码质量)组件包含摘要将Django的表单用于仪表板控件,而不是重新设计控制盘。/分辨率为WONTFIX/严重性为正常(代码质量)组件包含摘要更新南部/分辨率为固定/严重性为正常(代码质量)组件包含摘要使应用程序中的实用程序模块一致/解决方案已修复/严重性正常