for-each不适用于表达式类型必需的数组或java.lang.iterable5金钱.anslist{
技术问答
487 人阅读
|
0 人回复
|
2023-09-11
|
我尝试将json从Web应用程序中消耗到codeName1中,因此,我必须读取json,为此我已经使用了for-each循环,但我在编译时出错:for-each不适用于表达式类型必需的数组或java.lang.iterable 我的代码:% b" U) B* L9 Z$ |
- package service;+ b, ^0 W& Y% l7 ?6 ~; |8 w, _
- ( i8 f F a4 `% _6 j! P2 N4 Z
- import com.codename1.io.CharArrayReader;
5 Y+ r3 y! ~% u$ P. E8 l - import com.codename1.io.JSONParser;
- L! ?9 l: k! L& r - import com.codename1.ui.List;
1 ~) k& {5 A b# h6 h0 }6 s - import java.util.ArrayList;2 E- W2 w( Z' a" r' O9 g6 {
- import entity.User;
0 D! \6 g/ E# p2 M" V+ d - import java.io.IOException;
5 M' l$ w3 a, } - import java.util.Map;* p( f' h( I) x* b2 B
! Q6 Q* a8 G8 d8 h- D4 W- public class UserService {
3 y2 z: W7 K" A0 |# E - public ArrayList<User> getAll(String json) {
% Z9 ]5 p: ~* F/ {" G8 U$ y - ArrayList<User> u = new ArrayList<>();, m# a& O3 ~" j$ j/ P, p T* Q7 L7 `
- 7 d1 k3 o$ S- G }0 c
- try {
" Q# M, O5 |- P- d! a- S& i - JSONParser j = new JSONParser();' h# K2 a1 K& t+ V
- # W( l% }2 o8 ]$ V, s$ M
- Map<String, Object> p = j.parseJSON(new CharArrayReader(json.toCharArray()));
$ D* v* G' _9 p7 R6 d# i, y - List<Map<String, Object>> list = (List<Map<String, Object>>) p.get("root");& \+ c; D8 L) W) z
- for (Map<String, Object> obj : list) {3 M# g* J) ^+ N8 e7 b- y: `: W& M
- //... S% ^5 q* d4 _, e# B2 c
- }5 p# a6 D/ O3 p! c( c
- } catch (Exception ex) {6 o, n. v5 ?& O* A4 D' |- {9 d
- }& \0 O$ p. Y8 R
- return u;
}( L$ B$ J; [+ @& g w$ g - } } m4 `1 p& P; h0 P ]7 E
; {: O3 c; @1 a; m1 j3 \6 ^8 G
+ I* ?. g8 B8 K) i5 W- y& Y我知道答案 回答被采纳将会获得5 金钱 已有0人回答 |
|
|
|
|
|