from_multidimensional_java_arrays

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
from_multidimensional_java_arrays [2025/04/18 17:22]
colinr
from_multidimensional_java_arrays [2025/04/18 17:31] (current)
colinr
Line 1: Line 1:
-===== sf00FromNested(Object data) =====+====== Programmatically Creating Complex SecsFormat00 Objects from Java Arrays ====== 
 + 
 + 
 +===== 🧩 Convert Mixed-Type Nested Arrays: sf00FromNested(Object data) =====
  
 Recursively converts a nested ''Object'' array into a hierarchical SECS structure, inferring SECS types based on the Java type of each leaf element. Recursively converts a nested ''Object'' array into a hierarchical SECS structure, inferring SECS types based on the Java type of each leaf element.
  
 You may use this method when your structure may contain integers, floats, doubles, longs, or strings. Each array level becomes a ''SecsFormat00''. You may use this method when your structure may contain integers, floats, doubles, longs, or strings. Each array level becomes a ''SecsFormat00''.
-==== Example usage ==== 
  
-<code java> +==== Example method ====
-Object[][] example +
-    {"abc", 123, 1.23}, +
-    {"xyz", new Object[] { 456L, 7.89f }}, +
-}; +
- +
-SecsFormat00 result sf00FromNested(example); +
-</code> +
- +
-**Expected output:** +
- +
-<code> +
-[[<A 'abc'>, <I4 123>, <F8 1.23000>], [<A 'xyz'>, [<I8 456>, <F4 7.89000>]]] +
-</code>+
  
 <code java> <code java>
Line 57: Line 46:
 } }
 </code> </code>
- 
- 
-===== sf00FromNestedStrings(Object data) ===== 
- 
-Recursively converts a nested ''Object'' array into a SECS structure assuming all leaf elements are strings or nulls. This is often better when you know the expected SecsFormat of your values because the type can be defined explicitly. 
  
 ==== Example usage ==== ==== Example usage ====
  
 <code java> <code java>
-String[][][] nestedStrings = { +Object[][] example = { 
-    +    {"abc", 1231.23}, 
-        {"A", "B"}, +    {"xyz", new Object[] 456L7.89f }},
-        {"C", "D"+
-    }, +
-    +
-        {"E", "F"}, +
-        {"G""H"} +
-    }+
 }; };
  
-SecsFormat00 result = sf00FromNestedStrings(nestedStrings);+SecsFormat00 result = sf00FromNested(example);
 </code> </code>
  
Line 83: Line 61:
  
 <code> <code>
-[[[<A 'A'>, <A 'B'>][<A 'C'>, <A 'D'>]], [[<A 'E'>, <A 'F'>], [<A 'G'>, <A 'H'>]]]+[[<A 'abc'>, <I4 123>, <F8 1.23000>], [<A 'xyz'>, [<I8 456>, <F4 7.89000>]]]
 </code> </code>
 +
 +
 +===== 🔤 Convert All-String Nested Arrays: sf00FromNestedStrings(Object data) =====
 +
 +Recursively converts a nested ''Object'' array into a SECS structure assuming all leaf elements are strings or nulls. This is often better when you know the expected SecsFormat of your values because the type can be defined explicitly.
 +
 +==== Example method ====
  
 <code java> <code java>
Line 113: Line 98:
 } }
 </code> </code>
- 
-===== sf00FromNestedStructuredTriple(Object data) ===== 
- 
-Recursively converts a nested ''Object'' array into a hierarchical SECS structure, using explicit types at the leaf. In this example, 
-Non-array elements are assumed to be leaf-level triples: **[String, Float, Integer]**.   
-Arrays are recursively processed into nested ''SecsFormat00'' structures. 
  
 ==== Example usage ==== ==== Example usage ====
  
 <code java> <code java>
-Object[] nested = { +String[][][] nestedStrings = { 
-    new Object[] +    { 
-        new Object[] { "abc", 1.5f, 42 }, +        {"A", "B"}, 
-        new Object[] { "def", 2.5f, 99 }+        {"C", "D"}
     },     },
-    new Object[] +    { 
-        new Object[] { "ghi", 3.0f}+        {"E", "F"}, 
 +        {"G", "H"}
     }     }
 }; };
  
-SecsFormat00 result = sf00FromNestedStructuredTriple(nested);+SecsFormat00 result = sf00FromNestedStrings(nestedStrings);
 </code> </code>
  
Line 139: Line 119:
  
 <code> <code>
-[[[<A 'abc'>, <F4 1.50000>, <I4 42>], [<A 'def'>, <F4 2.50000>, <I4 99>]], [[<A 'ghi'>, <F4 3.00000>, <I4 7>]]]+[[[<A 'A'>, <A 'B'>], [<A 'C'>, <A 'D'>]], [[<A 'E'>, <A 'F'>][<A 'G'>, <A 'H'>]]]
 </code> </code>
 +
 +
 +===== 📦 Convert Structured Triple Arrays: sf00FromNestedStructuredTriple(Object data) =====
 +
 +Recursively converts a nested ''Object'' array into a hierarchical SECS structure, using explicit types at the leaf. In this example,  
 +Non-array elements are assumed to be leaf-level triples: **[String, Float, Integer]**.  
 +Arrays are recursively processed into nested ''SecsFormat00'' structures.
 +
 +==== Example method ====
  
 <code java> <code java>
Line 186: Line 175:
 </code> </code>
  
 +==== Example usage ====
 +
 +<code java>
 +Object[] nested = {
 +    new Object[] {
 +        new Object[] { "abc", 1.5f, 42 },
 +        new Object[] { "def", 2.5f, 99 }
 +    },
 +    new Object[] {
 +        new Object[] { "ghi", 3.0f, 7 }
 +    }
 +};
 +
 +SecsFormat00 result = sf00FromNestedStructuredTriple(nested);
 +</code>
 +
 +**Expected output:**
 +
 +<code>
 +[[[<A 'abc'>, <F4 1.50000>, <I4 42>], [<A 'def'>, <F4 2.50000>, <I4 99>]], [[<A 'ghi'>, <F4 3.00000>, <I4 7>]]]
 +</code>
  
  • from_multidimensional_java_arrays.1745014968.txt.gz
  • Last modified: 2025/04/18 17:22
  • by colinr