簡體   English   中英

如何在我的控制台中打印 arraylist 的內容

[英]how to print content of arraylist in my console

SearchRequest searchRequest =  SearchRequest.of(s -> s.index("products").query(q -> q.multiMatch(
         t -> t .fields("description","name").query(text)))
         );
       SearchResponse searchResponse =  elasticsearchClient.search(searchRequest, Product.class);
       List<Hit> hits = searchResponse.hits().hits();
       List<Product> products = new ArrayList<>();
       for(Hit object : hits){
           System.out.print(((Product) object.source()));
           System.out.println(products.toString());
           products.add((Product) object.source()); 
           
           }
   
       return products;    

我想在我的控制台中打印“產品”

我試過:System.out.println(products.toString()); 但它只顯示參考編號@6ae9453[] 我想顯示“產品”中的內容

使用Arrays.toString(products)將數組內容轉換為String

https://docs.oracle.com/javase/7/docs/api/java/util/Arrays.html#toString(java.lang.Object[])

解決這個問題的一種方法是向Product類添加一個toString()方法。 如果您的Product有兩個屬性, titleprice ,則toString()可能類似於

 public String toString(){ 
   return title=" + getTitle() + ", price=" + getPrice()
 }  

許多 IDE 都支持生成toString()方法。 請參閱 fx https://www.jetbrains.com/help/idea/generate-tostring-dialog.html

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM